You are on page 1of 300

VERTEX

RYANHAWKINS

Featured Artists
2D Concepting
Darren Bartley
3D Environment
Philip Klevestav
Render Targets
Material Guidelines
Far Cry 3 Art
ZBrush
Texturing Tricks
World Machine
3D Scanning
NDO/DDO

Cover Image By: Alexandre Zedig Diboine


2

VERTEX
Letter From The Editor
3

Letter From The Editor


I would like to first thank you, the readers, for downloading the books from us and helping
show us that there is a need for this type of media out there. VERTEX is brought to you by
the community of artists from all different types of digital entertainment industries. Origi-
nally the concept of what this book was going to be focused directly to and only on video
game development tips and tricks. But the interest in this type of educational media sparked
from other industries as well so I thought well we might as well try to cover those needs.
Since VERTEX is free we are able to take our time with the content and make sure that we
are giving the readers the ideal material. The goal with VERTEX was to release one volume a
year but due to the size of the actual book and the content needs we can only really release
it when it is truly done.

The content in VERTEX comes from working professionals who have full time jobs and do not
get paid to contribute to this. We work with their schedules as best as possible and do not
rush the content to meet a release deadline. By holding the book and editing it and tweaking
the content with the artists we can ensure the quality of the content will be its best for you.
There are always those readers out there who voice their opinions about how we should
charge for these books and if we were making money then it would help increase the pro-
duction speeds in how these are created. The truth is involving money in this equation just
makes things take even longer. Because the books are free we are able to give you insights
on company workflows and breakdowns of movies or games without having to work with
legal teams too heavily.

Another thing that I don’t see changing too much is the fact that I horde the creation of the
book to myself. I want to make sure the content is to the quality that I want. I also hand pick
the content in the book so that there is no overlap from previous books as well. With just a
few team members and me, we are able to take our time and not rush things. I also do not
work on the book every day. I work on the book in strides to ensure the book’s quality is
always the best it can be. I feel that if I force myself to work on the books for long periods
of time the work that I have done becomes repetitive and starts to lose its flare. This also
allows for the artists submitting content to be more relaxed as well thus making their want
to share their workflows and tricks with the readers stronger. I try not to stress anyone that
works with the books. The end result is all we care about. When it’s done is just a matter of
if we feel the content is ready or not. Thanks again for letting us take our time when creating
the books and not pressuring us to sacrifice quality to release faster.

Thanks for the support,

Contact the Editor


Ryan Hawkins, Editor
ryan@artbypapercut.com

VERTEX
Table of Contents
04

VERTEX
Table of Contents
05

VERTEX
PERSPECTIVE
6

PERSPECTIVE
Perspective Environments in Games By: Gino Whitehall

Environments in perspective can be a tricky beast to paint. My fellow artists, along with myself, will have wonderful
gripe sessions about how tricky it is to come up with a convincing scene, much less a populated, convincing scene.
With so much to consider, it’s easy to lose track of all the spinning plates. This tutorial will break down the elements
of a perspective environment and explore some of the things I consider while painting.

For the sake of space, and our attention spans, I’m going to assume at least a base familiarity with fundamental
drawing skills and the idea of one and two point perspective. Thanks to the internet, there are many resources out
there, from instructional videos on YouTube to Wikipedia articles, that can help bring you up to speed.
This image started out as a daydream while waiting for the train one morning.

I was at the station people watching, and I started making up backgrounds for everyone I saw. Eventually an un-
dercover spy drama was unfolding before me. The thought of spies among the public entertained me all day, and I
wanted to go with it!

VERTEX
PERSPECTIVE
7

The first step, of course, is the thumbnail and reference stage. I Google searched image reference online and
sketched from life at the station. I quickly get down a few compositions, trying to see what works best for the vi-
sion forming in my head. I’m thinking I want to show two agents interacting among an unsuspecting public. This is
especially difficult. While I want the viewer to pick the agents out from the crowd, they should look like they could
blend in. I decide that I want to explore a stylized world, as opposed to something more realistic, mostly just be-
cause I enjoy exploring shape design. This means that I will avoid photo textures or anything that might suggest too
much real-life detail. After a couple thumbs, I have something I like. I’ve been looking at photos of subway stations
from New York City to the United Kingdom to Japan, and decide to use elements from the different locations. I build
a three point perspective grid and use it as an overlay while I sketch out the environment. At this stage, as well as
throughout the rest of the painting, I try to keep in mind on a couple of important concepts. Specifically, I like to pay
more attention to the horizon line, repetition, composition (foreground, mid-ground, background), and values.

It is important to always keep track of your horizon line, otherwise known as the eye level of your scene. Anything
below this, you will be looking down on, anything above it, you are looking up at. The horizontal line is also helpful
when placing people into a scene. I decide to have my horizon line at a human height, so as a viewer, we are look-
ing eye to eye with everyone in the scene, making it a bit more convincing. I make my horizon line especially dark
on my perspective grid, so I can keep track of it. Repeating a form in space is a great way to sell depth. As such, we
want to push the idea of depth as much as we can, since we are only actually looking at a flat surface. Using repeti-
tion, in this case the pillars repeating into space as well as the people scattered about the scene, will definitely help
create the illusion of depth. Foreground, mid-ground, background! Environments are easiest to comprehend when
broken down into these three sections. I try to identify each section and plan the image accordingly. My foregrounds
will have the darkest values, while my backgrounds have the lightest. I try to again sell depth through overlapping of
shapes. The long walkway from foreground to background helps draw our eye into the scene, while the figures and
pillars overlapping each other help to avoid any flatness.

Values will help show atmosphere, with the darker values being up close, and the lighter values being further back.
I will keep the greatest area of contrast at my focal point, which happens to be in the mid-ground. I will frequently
check my composition at thumbnail size, or convert to a grey scale image, to see if my value arrangement is still
working. I also frequently flip my image horizontally, so that any mistakes I’ve missed might become more apparent.

VERTEX
PERSPECTIVE
8

Once my space is sufficiently sketched in, I block in my initial colors. I want to use the creepy green tint of fluorescent
bulbs as my main light source. This will give an eerie vibe to the subway that I think will work well. I decide on a red
and green color scheme, since red is the natural complement to green, and because I found some neat red pillars
in my photo reference. I keep my perspective grid on for now, moving about the image evenly, fixing any mistakes,
and cleaning up edges. As the image progresses, I’m introducing a lot of muted grey colors because it helps the fo-
cal point pop even more and keeps the scene from feeling too distracting. As I identify my focal point, I make sure
to lead the eye to that area, making sure the rest of the image helps support the main idea. For example, the pillars
seem to point back to that spot, as well as pipes along the wall.

This next stage is just a lot of rendering passes. I continually adjust and clarify different spots, slowly introducing
smaller details such as garbage cans, signage, and weathering. I try to show the age of the station, worn out from
years of constant use. The walls are peeling, the ground is stained. Very often in real life a warm light source means
cool shadows, and vice versa. I make sure to show a warm and cool color contrast in my lights and shadows to show
this. I decide to expand the canvas a bit to show a subway train approaching. I feel that its orientation will help lead
the eye back away from the edges of the canvas, as well as its headlight balancing the bright values just a bit.

VERTEX
PERSPECTIVE
9

Now it’s time to fill my environment with life! I block in my figures, showing contrast through their different sizes.
I try to inject an urban vibe by showing lots of average Joes rather than suits. This also helps the spies stand out a
bit more. The many jackets, as well as an umbrella, hint of a cold environment up above the ground. We know we
are below ground due to the stairway leading up behind them. I’ve made it a point to keep most of the crowd in the
shadows. Their colors are a bit darker, so they sit into the scene a bit. There isn’t one specific person standing out,
except the ones intended to. Their heads all line up at eye level, which reinforces perspective and helps them look
grounded. I pay a bit more attention to the seated spy. His suit is definitely flashy, but I decide that’s just his charac-
ter. The advertisement sits behind him intentionally because the value contrasts really forcing the eye here first. He’s
peering just over the top of his newspaper. Is he aware of what’s happening?

Now, the finishing touches. I finish detailing the background folks and change the pose of our foreground spy so that
he’s drawing a gun. Ooooh the suspense! It’s the moment of calm before the storm. I show some papers fluttering
through the air, being pushed by the wind of the train. These sorts of details help sell the effect of a moment frozen
in time. At the point where I feel done I go back to my focal point and spend just an hour or two polishing details.
I want that area to be the first place one would look, and because I’ve been detailing the rest of the image evenly
I can polish one area while leaving other areas looser without breaking the image. If you look at areas of the train,
the tracks, or the background figures, you can see how simple they really are. That’s thanks to the focal point, along
with the surrounding areas leading our eye back there so we can get away with these broad strokes.

VERTEX
PERSPECTIVE
10

With the image completed, I’m able to look back and reflect on what went right, and what didn’t. Overall, I’m happy
that the perspective of the environment reads convincingly, and the people in it seem to belong and don’t feel out
of place. I feel relatively happy with the color scheme, but feel I could have pushed the color shifting even more. The
darker spy doesn’t pop out as well as I had hoped, but hopefully the rim lighting on his back gives him the contrast
he needs.

Another painting complete, more XP toward gaining another art skill level! With each image finished, you are further
refining the skills of your hands and eyes, even if you don’t necessarily realize it. With each painting, you have experi-
ence from all of the little successes and failures that came with it. If your environment skills are leaving you frustrat-
ed, attack it in pieces. Do studies from your favorite movies. Carry a sketchbook everywhere you go, draw every room
you’ve ever been in. Like any other muscle, exercise it the correct way, and it will get stronger!

VERTEX
PERSPECTIVE
11

About Me
My name is Gino Whitehall, I was born and raised in Healdsburg, Cali-
fornia. My life changed sometime around age 4 or 5, when I discovered
Super Mario Bros., and Uncanny X-Men. From that point on, drawing
and reading were my obsessions.

I attended Art Center College of Design in 2004, obtaining my BFA In


Illustration. Upon graduation in 2008, I found myself at Blizzard Enter-
tainment, working as a Concept Artist on their unannounced MMO. I
spent four years there, as well as teaching environment painting at La-
guna College of Design.

I’m currently at Gree International, as a Senior Concept Artist. I’m hav-


ing a great time exploring the budding mobile games market, and as
always, am filling sketchbooks and hard drives as fast as I can.

Gino Whitehall
www.whitehallstudios.blogspot.com

VERTEX
12

Rasmus Berggree www.rasberg.blogspot.com


13

Toni Bratincevic www.interstation3d.com


SPLINES
14

THE SPLINEMark Dygert


Splines and Booleans By:
I know what you’re thinking. You’ve probably heard some horror stories and you might even have shied away from
them because of a bad experience but I aim to change that. I will reintroduce you to splines and show you some tricks
you might not have thought possible. With any luck it will unlock a new set of possibilities and boost your speed while
giving you more flexibility to make simple changes to complex shapes in a shorter amount of time. It almost sounds
too good to be true. What about the horror stories?

The truth of the matter is the horror stories are right, but mostly because people try to use them for bazaar things.
Just like you wouldn’t use a screwdriver to prune bush you don’t want to use splines the same way you use edit poly.
Leaning some of the cool things you can do with a spline will help you realize their potential and hopefully leverage
them to the best of their ability.

Creating Splines
Say hello to the much maligned and ever so humble spline. There is a lot you can do with this simple little line. You can
use it as a path to sweep a piece of molding along a wall, you can use it as a profile shape for a modular wall unit, you
can create vase, a decorative pillar balusters or chess pieces. I could keep going on and on but really once you have
the workflow down you find all kinds of uses for them so it really pays off to warm up to the spline.
If you have not used these little guys before you should
take a second to familiarize yourself.

Command Panel > Create > Shapes >


Lines

Click a few points in the viewport and click on the first vert to close the shape. This is important because some of
what we aim to do, will need closed geometry. Open splines are one reason they get a bad rep and it’s mostly because
people never close their splines.

Note: There are some simple ways to make sure your spline is actually closed. A closed spline will have only one
segment so go into segment sub-object mode and click a line, the entire spline should turn red, if it doesn’t you know
where the breaks are and you need to weld them. Also keep in mind that every vertex has a number, the order is
derived from their creation and the first vert is always white. If you have multiple white verts, this means you have
multiple segments.

VERTEX
SPLINES
15

Also with a closed spline you can set the 1st vert to any vert using the Make First tool in the spline menu. On an
open spline the first vert will always be on an open edge, so if you can’t move the first vert, there is a chance its on
an open end.

You can also place a poly creating modifier (edit poly, shell, extrude, etc) on top of the splines stack and if nothing
shows up, its open and you need to close it. If you have a spline that just refuses to convert to polys select all of the
points and weld with a relatively low threshold. 99.9% of the time this solves the open geometry issue.

Smooth/Corner

Notice the difference when creating a spline if you simply click a point, you get a sharp corner. If you click drag a
point you get a smooth point with bezier handles. You can change the behavior of the verts at any time by selecting
them, right clicking the viewport and select one of the options in the upper left.

I normally stick to making corner and smooth and leave the bezier options alone for the simple fact that working
with bezier curve handles in 3D space is one reason splines get a bad reputation.

If you really want to dig into bezier handle editing the 3ds Max help file has some useful info on helping to manipu-
late the handles along the different axes. I find smooth and corner get the job done in half the time, with a lot less
frustration and less interaction with wonky tools like the axis constraints.

Note: You can also increase and decrease how smooth a smooth vert will be by adjusting the interpolation steps.
Setting it to 0 will not add extra loops. I almost always select all of the verts and set them to smooth and use Refine
in the spline menu to place control verts/edges close to each other, much in the same way you would do it when
working with sub-d.

Shell and Extrude


Drop an extrude or shell modifier on top of your stack and go back down the stack and edit the spline in vertex
mode, be sure to turn on “show end result” in the modifier stack.

VERTEX
SPLINES
16

Extrude and Shell do pretty much the same thing for our proposes here but it is good to note the difference in settings
because one may do something better than the other.

For example shell will allow you to bevel the edges and define that bevel with another spline which can be helpful for
things like a fancy detail around the edge of a table. Lets get back to our spline...

Set one of the points to smooth and move it around, you can push around a lot of geometry by only manipulating
one vert. In the spline menu you can increase the Interpolation steps to increase the smoothness of the spline. You
can also adjust the segments in the Extrude modifier to add more cross sections. This can be incredibly helpful for a
modular wall section or quickly blocking in simple shapes that are part of a more complex model, but more on all of
that later. There is one more way to create splines...

Spline Painting
Painting a spline can be a bit more creative and fluid than clicking each point to make a spline. With any edit poly
object selected, go to the Graphite Modeling tools, Freeform tab, and click spline. Now you can paint a spline in the
viewport.

It can be a quick way to create:


Tree trunks, vines, ropes, cables (closed spline shape, convert to Edit poly, extrude along spline path, taper and twist)

Table cloths (closed spline shape, copy spline, spherify, cross section modifier, convert to edit poly)

Ivy or branches (use particle flow to add leaves, use vertex paint to define where they go)

VERTEX
SPLINES
17

If you are on 3ds Max 2009 or lower you can check out Soulburns Scripts for a really well put together spline painter
script by Neil Blevins who is an outstanding artist and technical director for Pixar. In addition to some great scripts
he has a great CG education section on his site so check that out also when you get some time.

In exchange for this freedom of fluidity you give up precise spline vert placement control. Spline painting will create
verts every few units instead of points where you click. This enables you to create nice fluid shapes but the splines
are a lot more dense. People will typically take a few minutes to optimize them before moving on, which is simple,
weld with a average threshold or simply select verts and hit delete.

Note: That you can also add verts back in by using the refine tool in the spline menu and clicking on the spline.

Splines and Lathe


Delete the extrude modifier and drop a lathe modifier on top of your stack and go back down the stack and edit
the spline. Now you are working with one row of verts but controlling the rest of the geometry easily. Making giant
sweeping changes to the overall form of the piece is incredibly easy.

Switch verts from smooth to corner and insert verts close to each other to make sharper rounded corners using the
Refine tool in the spline menu much in the same way you would use control edges when working with sub-d. This
can be a great way to add control loops and get the smoothing on a edge just right without being constrained to a
ultra sharp corner.

Another advantage to working this way is that you can easily generate a low poly model or LODs, from the high
by adjusting the number of steps in Interpolation and the number of segments in Lathe. Adjusting the number of
segments in your model through normal poly modeling would traditionally be a big undertaking with a lot of steps
involved, but with this method it’s one simple slider that you can adjust at any point.

VERTEX
SPLINES
18

Keep in mind that with the way the modifier stack in 3ds Max works, you don’t always have to work symmetrically
and you don’t always have to give up symmetry to have asymmetrical end results. This is probably best demonstrated
by tossing a noise or FFD modifier on top of your stack. This allows you to go back and edit the underlying pieces but
the end result is twisted and deformed. This is particularly handy for things like tree trunks or stalactites/stalagmites
and various other organic shapes.
Splines, Sweep Modifier, ProBoolean, Extrude Along Spline

1: Profile spline for the wall.


1a: Simple spline line, with a Sweep modifier applied, set to custom shape and targeting 1 (set to instance so 1 can
be edited at any time and the wall is updated).
2: Profile spline for wall indent.
2a: Square spline with a sweep modifier applied, set to custom shape and targeting 2. You can use this trick to do
picture frames, molding, trim around doorways and windows, you can even sweep a profile shape over a curved
spline to create an arch over a doorway.
2b: ProBoolean applied to 1a, targeting 2a (set to instance so 2 and 2a can be edited at anytime). After adding it
to the 1a ProBoolean, you can click on operands in the Modifier stack, then select the specific operand in the Pro-
Boolean menu and move it around. Note: You can press the shape into the surface only a little to get some very light
details or deeper to get more details. This can be helpful if you are doing areas that are similar in style but different in
finer details ie. fancy dining room in a mansion and the servants quarters.
3: Cloned one box, set instances to 15, merged into one object.
3a: Added 3 to the 1a ProBoolean as an instance and moved them into place.

VERTEX
SPLINES
19

A: Three, six sided cylinders vertex snapped together so they align perfectly and are easy to snap together.
B: Then adjusted the number of segments to 12 to round it out a bit more, notice that the edges of the cylinders
align and can easily be welded because we doubled the number of sided.
C: Delete the top and bottom polys.
D: Delete the inner polys and weld the verts together.
E: Select the boarder and cap it, delete all but the newly created poly.
4a: Move the poly you created in 4 to the 4a path spline and in edit poly of 4 use the Extrude along Spline tool to
target 4a. Use the twist and segment options to create a rope shape. (This geometry is not added to the boolean
for obvious reasons)

Don’t stop here, you can continue to add other shapes to get different details. You can reorder the “Operands” to
change what layer any given shape interacts with the ProBoolean. The ProBoolean also acts as a warehouse for
the shapes allowing you to extract copies if you deleted the original instances or had it set to “move” instead of
instance when you added the shapes.

VERTEX
SPLINES
20

So you are probably saying “yea but I can do this with poly modeling”. The power and flexibility start to play out when
you go back to some of the basic spline shapes and start making some pretty big changes. For example exiting the top
molding after the boxes have been cut with traditional poly modeling techniques would have you working on dozens
of pieces of geometry that are identical, you can copy/clone one piece and weld them together but that takes time.
With this method you could edit the original profile shape and it updates the final model.

Adjust 1 vert instead of 30+, remove some verts and adjust the spline interpolation to make your low poly instead of
painstakingly removing edges and collapsing rings.

This method is great when you find out some of the molding details don’t capture all that well when you bake out a
normal map, or your boss utters those classic boss phrase “I like this but change that...”

Keeping It Clean
The key to keeping any boolean clean is knowing what kind of geometry it will generate and now the mesh is being
triangulated. It can be helpful to put a “turn to poly” modifier on top of your stack, set the number of sides to 3 and
toggle it on or off to see how the triangles are being laid out. Often this will catch messy edges that you can avoid by
nudging around an few operands.

It can also be beneficial to add a “smooth” modifier to the top of your stack, which will automatically smooth the
model as you work on it without having to manually edit the smoothing groups each time you make changes to the
geometry.

Working off of a grid and snapping to it can help keep geometry clean and manageable. Remember to use custom
grid objects (Create Panel > Helpers > Grid)

Custom grid objects can be moved rotated and snapped


into place.

Note 1: Select a grid object and right click to “activate it”.


Do the same to switch to another grid object or back to the
home grid.

Note 2: If you do this often enough you might want to


bind “Activate Grid (Context)” to a key. This key will activate
any selected grid object, with nothing selected it will acti-
vate the home grid.

Scaling In Object Space


Object space scaling will trickle down to all aspects of splines later on so it’s good to either not scale in object space,
or reset the transform/scale matrices after you’re done. Again you can scorch the earth with reset xform or take the
more humane route and go Hierarchy tab > Reset Scale/Transform.

So there you go. A small sample of how splines can help speed up your workflow and make it more flexible, and how
to side step some of the common spline/boolean land mines that people tend to run across.

VERTEX
SPLINES
21

Pivot Point Orientation


Booleans tend to get a bad rap for unpredictable results, part of why that
happens is the orientation of the objects local pivot point and the Refer-
ence Coordinate System is set to world (I said along Z!? Why is it path
deforming along Y!? Oh right local pivot)

Or if the object was scaled in object space before being operated on. A
lot of tools that work with splines and booleans work on the local pivot
(like most of the animation tools) they assume the objects local pivots
are pointing in a similar direction, if it isn’t you get rotated and distorted
results.

Depending on what viewport you create an object in, it will affect how
that objects pivot point will orient to the world. On object creation, Z
always points directly into the camera of that view. Meaning it won’t
always point “up”, unless you are in perspective or orthographic mode
where it will align to the world, then the local Z will point up. For the sake
of consistency, stick to creating splines in perspective view or in the top
viewport, so the pivots match and you minimize wonky issues.

Keep in mind, that you can change the orientation of the pivot by going to the hierarchy tab, and clicking “affect
pivot only” then rotate just the pivot point. If your model distorts along one axis when you rotate the pivot point,
you have scaled it in object space (more on that in a minute) just go down to “Reset” and click “transform” and
“scale”. This will clear out the transform matrix history and set everything back to 100%, then you can rotate the
pivot point without it freaking out.

Going nuclear on pivot points by using the reset xform Utility (which I don’t advise unless you’re the scorched the
earth type of person) can also cleanse your pivot point, but it will also orient your pivot point to the world which
can be bad. But honestly just get in a good habit of paying attention to your pivot points and it won’t be an issue.

About Me
My name is Mark Dygert I am currently the lead character animator at
Her Interactive. It’s hard to remember a time when I wasn’t passionate
about making games, actually if I try really hard I can remember grow-
ing up in the 80’s and early 90’s back when Legos, Star Wars and GI Joe
where high tech toys, which is what I was playing with when I wasn’t
drawing and wanting to be a 2D animator. I would like to apologize to
the Northshore School district for using its textbooks as flip books…

I was in high school when Doom shipped and it introduced me to dial-


in-multiplayer and making custom content. Back then it was not really
a career path like it is today, so I tucked those fun times in my back
pocket as a hobby and went off to college.

As I was working my way through college and I ended up working the


graveyard shift job doing page layout for a bunch of different maga-
zines, one of them was this thin little publication called “Game De-
veloper Magazine”. 7 years ago my hobby became my full time job
and I’ve been at Her Interactive ever since, shipping 16 titles. I have a
wonderful wife and a brilliant daughter and I hope someday she gets
the opportunity to turn her passion her job, whatever it is.

Mark Dygert
w w w . v i g v i l l e . c o m

VERTEX
22

Josh Kao www.jkconceptart.com


23

Nivanh Chanthara www.duster132.carbonmade.com


FRIENDLY ART
24

FRIENDLY ART Philip Klevestav


How to create Designer Friendly Art By:

As an Environment Artist with a background as a Level Designer I have always been interested in creating my art assets
to be as easy to use as possible from a designer’s point of view. This involves a lot of different techniques and will of
course vary a lot depending on the type of game you are working on.

I think this is sadly something that is overlooked quite often when it comes to game art. So many times you can see
examples where design has suffered in favor of great visuals, or the other way around. The reasons for this can be
many but I think the most common problem is poor communication between Level/Mission Design and Environment
Art. It definitely has a lot to do with how roles are defined at a company too. I think it is very important that both de-
signers and artists can or are even encouraged to familiarize themselves with each others departments. That doesn’t
mean a Level Designer should all of a sudden spend half his/her time texturing barrels or for an artist to build the next
de_dust, but having at least basic knowledge of how things are made on both ends is very important and often auto-
matically creates a strong bond between the two.

To me creating something great looking is just a small part of the job of a game artist, the largest challenge is definite-
ly creating something great looking on a tight performance budget that also plays really well. It’s easy to say that it’s
purely the designers responsibility to make the game fun and only focus on the visual part, but that’s not true, making
a game fun is really everybody’s responsibility. The way you decide to create your art assets can and mostly will have a
direct impact on gameplay. See it as a great chance to influence the game in more ways than sweet visuals.

I believe that only when the art and design departments work very closely together, almost as a single unit, can a truly
great experience be created. Sometimes it means that huge teams need to cooperate and other times the design and
art departments consist of one single person.

VERTEX
FRIENDLY ART
25

Standardize
Having good set of measurement standards is perhaps one of the most efficient ways to ensure the art will be con-
sistent from a gameplay perspective. It’s surprisingly easy to overlook this very important factor. Things like: How
wide is a door? How high is a cover object that you can duck behind? What is the jumping distance?

Setting up a range of these standards can be a lot harder than it seems at first. You will definitely want to do a lot
of testing as early on as possible. As we all know games go through a lot of stages during their creation, so keep in
mind these rules should be adjustable later on. Any change to a system while in full production will have a huge
effect on most things created so far, so lot of rework might be needed and it should definitely not be taken lightly.
This is why you definitely want to make as many of these adjustments as early on as possible.

Creating a Designer Kit


We know we want to set up standards, try to test them and make adjustments very early on and make sure to stick
with these under all circumstances. One of the best ways to make sure you stick with these standards and have an
easy way to test is to create a designer build kit. It also allows you to make really quick iterations when testing.

VERTEX
FRIENDLY ART
26

The few pieces in the image could, with a large dose of creativity be enough to prototype a whole level. Of course
depending on the engine and tools used, you will most likely want quite a few more pieces. Creating various sized/
shaped walls and floors is a good example. You will probably also want to cover up some of the most common prop
sizes, different types of add-on parts, common railings, windows and such.

A lot of studios already apply this, and it’s somewhat spread to some of the hobby developers. The Source engine SDK
already conveniently contains a designer kit, so the idea is fairly widespread within the Source community.

However I definitely recommend you create such a kit even if you are making scenes/levels for fun in your spare time.
You only really have to create and set it up once and it will help you block out your scene incredibly fast.
I often do this in a very iterative way where I try to block out the whole space, no matter if it’s a whole level or a
smaller scene. Even if I plan to put most of the focus on the art side I will still try to create a kit. There are just a ton of
advantages to having a kit like this, both design and art wise:

Standardizes everything you build and acts as a great guideline for anything new.

Rapid prototyping.

Helping you imagine a space and making sure it’s easily built once switching out to “real assets” because you
already have everything laid out before hand.

Great for paint overs.

Perfect as filler for missing objects in your scene that hasn’t yet been created.
You don’t have to limit such a kit to only be the most basic block pieces either. It may help with the transition from
prototype to real art if you have some more detailed pieces to place around in addition to basic block out pieces. It
can help give the player a better understanding of what the area is all about.

VERTEX
FRIENDLY ART
27

The designer kit shouldn’t be too large as it can get out of hand and defeat the purpose of having a quickly adjust-
able kit if design is changing, but having enough shape and size variation in these more detailed block outs will
almost ensure you to have something the designer needs so no further requests are needed. It will also help when
replacing any of the block out art with real art.

In my experience these kinds of designer kits have been helpful, if not essential, to the entire development team.
It makes both design and art more confident that what they are creating will actually work. After some time using
a designer kit I always feel like all the measurements and rules kind of stick to me and I know them all in my head
which also makes me a lot more confident when I create new stuff.

To me, if you have a solid set of basic rules to follow it’s actually easier to be creative than if you have absolutely
nothing to start from.

Is your art user friendly?


This is a big one, and it involves numerous topics. It can range from pivot placement and how consistent you are
with them to how optimized, readable and reusable your art is. I will start with the simplest one.

Pivot Placement
It may sound silly to bring this one up, but it really makes a huge different how consistent you are with where you
place your pivots/root points of your assets. It’s definitely worth giving this a fair bit of thought before you start
creating your assets, especially if you’re part of a team and other people will use your assets in their levels. Agree-
ing and testing out the most efficient system for you will help speed level creation up a lot. Another reason why you
may want to spend some extra time in the beginning to agree on a good set of rules for pivots is that the later you
start standardizing this the more painful it will be to go over old assets with all kinds of rotations and center points.

In the image on the next page you can see this simple railing piece having it’s pivot in the bottom center of the ob-
ject (left in image) vs. at the bottom corner (right).

The latter one will make it a lot easier to create corners and make it easier to offset while having it in the center of
the object will force you to always move your object a lot more. Even if it may just be duplicating, rotating and mov-
ing your object to create a 90 degree corner, any time saved for any of those actions will add up to a lot of saved
time in the end.

VERTEX
FRIENDLY ART
28

I don’t think there’s any right answer to how you always want to place your pivot, but it is something that should
come out of discussions with the people who will use your art assets the most (typically a level designer of some
kind). If you as an artist can reduce the time designers have to spend re-arranging placement of objects just because
of inefficient pivot placement, the more time they will have to make sweet levels.

Player Collision
Again this may vary quite a bit depending on the type of game you’re working on. Assets with strange player collision
can sometimes be very distracting, and in worst case totally piss you off. This is one of those things that you won’t
notice or think twice about until that one time it actually is off. This is handled differently by different engines. A lot of
the time you can split up player collision and other types of collision. Personally I don’t think that the player collision
should be anything but a very rough representation of your model. If it’s a complex model with a lot of small protrud-
ing parts the player collision should definitely be a lot smoother. You can often also gain a lot of performance by creat-
ing very simple and basic collision meshes for your models.

VERTEX
FRIENDLY ART
29

On the previous page is an example where you’d probably want to stay away from having small protruding parts
that could interrupt the player if they accidentally get stuck between two of those details. This can be solved by
simply altering the player collision slightly to allow for smooth movement. In an FPS (especially multiplayer) the
slightest obstacles like these could be pretty devastating. Try to avoid letting the player get stuck behind anything
that isn’t clearly large enough to be used as cover.

Readability
As I said in the beginning of this topic there’s also the actual readability of your art. This obviously is both a big part
of actual art direction and style as well, but I wanted to bring it up from a design and gameplay point of view.

There are already tons of great books, tutorials and talks about leading the player with art and lighting in both sin-
gle and multiplayer games, so I won’t go into that really. I wanted to go in a bit on readability from a player perspec-
tive. I think most people will agree that a game (single or multiplayer) where you have to fire at any type of target,
it’s really important that you can clearly see the targets you’re trying to take down.
I’ve seen this solved in a lot of different ways that don’t actually involve having to make your art assets any more
readable. From having enemies glow, a strong rim-light/outline, various toggle render modes for the player to see
better (these can of course be a big part of a game mechanic as well and may not have anything to do with trying
to make up for poor readability in the game), heavy fog or depth of field blur to hide things getting too cluttered
further away.

Personally I think it’s very important regardless of art style to make sure the game is very readable from an envi-
ronment art point. It doesn’t mean you can’t have a lot of details in your art and have parts be very busy looking,
but be careful where you have it. The density of it, and maybe most importantly, how often is it used in the game
should be taken into account.

It’s very easy to get lost in looking at one isolated asset and try to make it look good enough to work as a portfolio
item by just adding tons of stuff to it. Say you’re working on a wall piece, you know it’s going to be used a lot in
game, it may very well be repeated a lot as well. Here’s a potential to really make the level/game very hard to read
just because this one asset had too much stuff going on.

Here’s an example of a very dull and plain wall, this example will just show extremes on both ends to get the point
out more clearly.

VERTEX
FRIENDLY ART
30

This one is packed with stuff and repeated, just a few times, but it becomes very clear in this example even if it’s obvi-
ously very exaggerated and flat from an art point of view.

Even if you’d never just have this in a level (either of the examples), I think if you imagine having a full level in any of
these styles it’d become very clear that the last one would probably be very difficult to play in compared to the ex-
tremely simplified example. You’d have a much harder time differentiating between enemies and some random wall
detail. You could also run into issues with leading the player to the preferred routes or points of interest as it’d be
more difficult to spot things like doorways amongst the rest of the noise.

Instead I recommend beginning too simple and play it early to see how it plays. If it’s really fun then you probably
want to be really careful about what you add to it art wise, in my opinion it’s totally ok to keep some assets very
simple just for this sake. You definitely have a problem if a level plays well and is very fun with temp/block out art and
then becomes less fun when it’s actually “artified”.

Other good things to think about when it comes to guiding the player to certain areas is the use of stronger accent
colors/different brightness values and lighting. In a shooter multiplayer map I even try to imagine the playable space
as some kind of an arena area, almost like a TV game show where you have a “track” or “play area” standing out from
anything around it. Maybe not the best example, but I think the idea can be carried on to a lot of game types.

My point is that you as a player should never have to think twice about if you’re looking at an enemy or a fuse box or
if you can jump over those rubble piles and get to that (perhaps too interesting) backdrop art, just because it looks
more fun than the actual level area.

Last thing, while on this subject, I wanted to just show a really quick example where I added a couple of add-on
models to the first image here with the simple walls. Obviously nothing spectacular, but by doing these kinds of small
additions to something that seems too simple, you’ve actually made it look a lot more interesting while maintaining
the readability.

VERTEX
FRIENDLY ART
31

Conclusion
My intention with this article is to bring up the importance of letting your artwork be more than something nice to
look at. There are a lot of things that all weigh in on making the production of a game/level/scene faster, more fun
to play and visually read clearly.

Generally I’d say you as an artist have a lot to gain by trying to work closely together with any design oriented
people. It will give you some great insight to the whole design aspect of the actual game you’re creating. Seeing
how other people use your art pieces first hand can help you understand how you can improve things the next time
around and it hopefully makes your art both easier to use and more fun to play with.

A lot of work goes into making your art look great, you should make sure it also plays great and is as easy to use as
it can be. In the end good art in a game is sadly pretty pointless if the game doesn’t deliver on the gameplay side of
things.

Whether you are an Environment Artist who has been in the industry for years or if you just started working on
your first hobby game I hope this article could inspire any of you to think about how your artwork directly and indi-
rectly has a huge impact on so many different parts of a game.

About Me
I’m currently an Environment Artist at Blizzard Entertainment working on the Next-
Gen MMO. I have enjoyed playing games since I was a small kid. My first contact
with level editors were for Duke 3D, Quake 1 and Command & Conquer where I
tried to learn the as much as I could with my basic primary school English and no
tutorials to read.

My first on site job in the industry was as a Level Designer at GRIN in Stockholm,
Sweden, where I also grew up. At GRIN I spent a bit more than 4 years, where the
first year was mainly as a Level Designer, but then transitioned to becoming a Tex-
ture Artist for a while. I hope to be able to stay in this industry for a long time to
come and I can’t see myself getting bored of it anytime soon.

Philip Klevestav
w w w . p h i l i p k . n e t

VERTEX
32

Bryan Lee www.ninnjapizzaburgers.blogspot.com


33

Yuri Alexander www.yurialexander.com


Render Targets
34

Render Targets
Render Targets in the Unreal Development Kit By: Alexander Dracott

Through the following pages we are going to be taking a look at utilizing some tricks with tools built into the UDK
to create a custom bloom post effect that looks like an anamorphic lens flare. In this session I will be covering three
things:

-What is a bloom post effect? How it is normally made?


-Step by step instructions on how to create your own custom bloom in the UDK.
-Why this technique is important, and what it allows you to do with custom post effects.

I set out on my own just over a year ago to create my own custom bloom within the UDK. I had seen some fancy lens
flares in different games (like the Mass Effect series and Battlefield 3) and wanted to do something similar. Not as a
static actor placed in front of objects, but as a post effect that could look at an entire image and create its own lens
flares.

Unfortunately I ran into some major roadblocks while working within the UDK that prevented me from creating any-
thing performance appropriate. Figuring out a way to create multiple render targets was my solution, and it is what I
am going to talk about at lengths today. While it can be used to create blooms, it has many applications and opens up
lots more. Let’s get started with some basic bloom information!

A pixel based image bloom is a post effect applied to a rendered frame made to simulate camera lens imperfections
that show up when a light source is incredibly bright. This effect is usually made by extracting the brightest spots of
an image, blurring it, then adding it back on top of the original image.

VERTEX
Render Targets
35

The most complex part of this process comes down to the different ways to blur an image. For pixel shaders, the
basic idea is taking one pixel, looking at nearby pixels, adding them all up, and dividing that total by the number of
samples that you took. You can also apply weighting to those samples as you add them up to make a blur appear
more soft and natural. The example I will be covering is called a Gaussian blur, which in its original form is a com-
plex equation to decrease the weight of samples as you go farther from the source.

We will be approximating those weighting values for increased performance. A technique we will be using here is
separating out horizontal from vertical blurs. While it is possible to blur in every direction at once, it can become
quite expensive to do so. It is cheaper to instead blur in one direction, then another. You can stack these blur
passes on top of each other to achieve different types of shaped blurs.

Keep in mind that this per pixel operation can get very expensive as the number of pixels you sample increases at
high resolutions, even with the double pass blur I mentioned above. 30 samples on either side of your source pixel
is not very big when your resolution is at 1920x1080. Fortunately we can get around this by down sampling an im-
age a few times using a factor of two before blurring the image. If we sample the image down step by step using
a factor of 2, the bilinear filtering which occurs on images as they change resolution helps us preserve detail as we
go down in resolution. Then it helps us soften things as we go back up. Using all of these tricks is vital to helping us
create a really soft shape for our blurs, but for a very cheap cost.

Let’s talk about what I ran into when I wanted to do all of these things in the UDK and why it creates a roadblock for
us. Currently the UDK post process chain is linear. Each post process chain node accepts the current render target
from a camera as a texture with 3 color channels and 1 alpha channel containing depth. The output of that post
effect feeds to another, but only the color channels. The alpha channel is reset to the depth render in between dif-
ferent effects.

VERTEX
Render Targets
36

Normally in a custom post effects pipeline you could create your own texture which you could write to, or read from,
and save out for later use. In this case we would need to do that multiple times (first to capture the bright parts of
our scene, then later before and after the blur passes). Unfortunately, even with custom HLSL nodes within the UDK
Material editor, we only have access to things within the pixel shader, and cannot declare new textures which happens
outside of it. On top of that, to my knowledge there is not a mip chain to allow us to access lower resolution images
of the default scene render.

Let’s talk about why this is a problem. In HLSL, to get the value of a pixel near or around the original correct pixel (in
this case for a blur), you need to shift the entire image in either the U or V direction by 1 pixels worth of space. You
then have access to the value of a new pixel as well as your original (so shifting the image down 1 pixel, gives you the
value of a pixel 1 up from the original). Now because we want to achieve cheap blurs with multiple passes, we need
access to the results of our previous blur, so that we can blur it again (vertical, then horizontal). Because the UDK post
effects pipeline is linear, we cannot save out a blurred copy of our threshold (the bright spots which will get turned
into bloom) without overwriting the original image (which we need to add our blurred threshold back too). This pre-
vents us from any kind of multi-pass blur on anything other than our original image.

For a long time this was a stopping point for me, since without a proper licensed version of the Unreal Engine, you
cannot go in and alter the code to give yourself access to this. It is possible to do your bloom blur at default resolu-
tion, but the cost of doing so is beyond doable. At this point I have to give credit to a real time graphics programmer
Kris Lang at Sony Online Entertainment.

Kris had been helping me for some time understanding complex rendering techniques and when hearing of this
dilemma, reminded me that you could in fact render textures and access them real time in the UDK. Normally these
textures are used for reflections on flat surfaces, but what if you could render them to flat walls and recapture the im-
age in real time with a camera? It looks like now we have a solution!

VERTEX
Render Targets
37

So let’s talk about technique. The basic idea is using the Texture Render Targets of the UDK to store the textures
mid post effect. To do this we will be capturing our scene with a camera actor other than the main one, and writ-
ing that out to a texture in real time which we will display on a mesh somewhere in the scene you are working on.
We can then recapture that image with another camera. Repeating this process gives us a way to access multiple
textures. Also custom camera capture resolutions allow us to fake the down sizing I previously mentioned.

As I mentioned before, we cannot use the normal camera for this (since it doesn’t have a render output). Instead
we want to use a SceneCapture2D Actor which can be found in the content browser under Actor Classes. Since this
is your normal camera you will want to increase your view plane, and enable fog and certain post processes. Let’s
also name this camera “Cam_InitCap”. This camera is what is going to be capturing your actual render. Its output
will be what is referenced for the final image composition, and your bright spots in your image. Check out the im-
age attached to see what settings to use.

HINT: You can preview your camera as your main camera, and fly it around like a normal camera by creating a new
matinee in kismet and adding your Cam_InitCap as a camera track, then previewing it. You also need to make sure
Cam_InitCap’s movement physics are set to Phys_Interpolating so it can be animated.

HINT: In the settings for my Cam_InitCap I plugged the render results into a temporary post effects chain so you can
see what the camera is seeing (Cam_InitCap → Tex_InitCap → Mat_InitCap → MainCamPostProcessChain).

Now that we have our main actor, we need to create a new texture for it to write to (and plug it into the Texture
Target) of Cam_InitCap. Right click in your content browser and create a new RenderTarget2D. You will want to
make sure that you create it in floatRGB format, and that you set your resolution to be what your final image out-
put will be.

HINT: From here on out, resolution makes a huge difference. In this example I will be working at 1280x720. If you
want to go higher, just make sure you keep the math in mind when we start cutting the resolution in half.

After your TRT (TextureRenderTarget) has been created, you will want to double click and change some settings.
Here you can adjust the size if you need to, as well as turn off the check boxes (specifically the render once option,
since this will be a real time render).

VERTEX
Render Targets
38

We also need to make sure the RTT tile is flipped, so that if there is any image bleeding when we blur, it blends better.
Finally we need to set the address Y and X to “mirror” so that if there is any kind of offset as we blur, the seams won’t
be super huge. Check out the image for more information. Not including the size, all TRT’s from here on out should
have this format. Let’s call this TRT Tex_InitCap.

Next, we need to make a material to display this image. This material is going to be where we separate out the things
we want to blur. Make a new material and set it to an unlit lighting mode. We want these display materials to be
as cheap as possible. Let’s call this materials Mat_InitCap. With this naming convention we can keep track of what
texture is displayed on what material, and it will also match up with the name of the camera. This way we know that
Cam1 → Tex1 → Mat1.


Inside the material, we want to first call in your Tex_Initcap, and then extract the bright spots. The easiest way to do
this is to just subtract your image threshold from your main texture sample, then clamp it (to prevent any negative
values and weirdness). I also throw in some custom desaturation parameters and value parameters to give me more
control. Finally I divide by (1-Threshold Value) to balance out the brightness. Make sure this material is set to the
unlit lighting model!

VERTEX
Render Targets
39

HINT: These values can be switched and played with later. There are many ways to do this part. The important part
is the subtraction, and the clamping.

We also need a 3D plane for Mat_InitCap to be displayed on. In any 3D program make a simple flat plane. The only
important part about this plane, is the need for the aspect ratio to match the resolution you will be rendering at.
Make sure you unwrap it to take up the full 0 to 1 space. Position this plane out somewhere in your scene, and put
the Mat_InitCap on it. After this create a new Scenecapture2D actor. Let’s call this camera Cam_HalfRez. We are
now working down the resolution chain. We do this, instead of jumping straight to lower resolutions, because it
helps keep individual pixels represented. If we were just to jump from full resolution to 1/8 resolution, small parts
of the image would get completely lost.

The settings for this camera need to be slightly different since we are now starting to stack real-time cameras. We
want make this camera capture as cheap as possible. You can look at the image of the settings to use, but the most
important thing is making sure the far plane is very close, and that the camera is just capturing an unlit version of
your scene.

VERTEX
Render Targets
40

Here comes the tricky part. You want to get your camera to line up perfectly with the capture of the plane. The easi-
est way to do this is to put something bright and vibrant behind the plane, and look through your camera as you move
it. I recommend making a temporary TRT and hooking it up to Cam_HalfREZ so you can see if any part of the bright
background bleeds into the image from the edges indicating your camera is not correctly lined up. The unfortunate
truth of the matter is it’s almost impossible to be 100% accurate. You will have to just get it as close as you can, as this
part is very “hacky”. If you start to notice your images not lining up as we move down the chain you can nudge your
cameras physically by tiny amounts. We will also do some work to attempt to make up for the lack of accuracy of this
technique later on.

Now we need a new TRT (call it Tex_HalfRez). Use the settings from the previous TRT here, but lower the resolution to
½ of what your Tex_InitCap was at. We also need a new material (Mat_HalfRez). This material is just a simple transi-
tion material, so it can be unlit, and just plug the Tex_HalfRez straight into the emissive slot.

VERTEX
Render Targets
41

The next few steps are pretty repetitive so I won’t go over them in detail. You need to duplicate your camera and
plane and drag it over in 3D space, and rename them to recreate the down size. Instead of full resolution to half,
you will be going from half to a quarter resolution. Let’s jump ahead to the material that you are creating to display
the quarter resolution image, since this is where we are going to be starting our blurs. Our first blur, is going to be a
vertical Gaussian blur. If you followed the naming convention previously set, the material we want to be looking at
is Mat_QuarterRez. Instead of just plugging the Tex_Quarter straight into the emissive slot, we need to blur the im-
age. We will be doing this part with a custom HLSL node, with some custom inputs. We also need to use a Custom
Texture node instead of a texture sample to make it easier to use in the custom HLSL node.

Create said node, and select it in the material editor. You want it to output a float3, and accept 4 inputs. One of
those inputs should be a UV coordinate node, so let’s call that “tex”. The 2nd is your texture input, which we can
call SceneColorTexture. We also need a value to dictate how far away each pixel sample for the blur will be (called
Factor), and finally we need a float2 containing the X and Y size of our image (to know how far we are offsetting the
image in each sample). Call that node PIXEL_SIZE. Check out the image for how I set mine up.

HINT: Lots of these blur methods take testing. I recommend throwing in test images instead of your Tex_* TRT’s so
you can clearly see what is happening to the image. Now for some HLSL. I’m going to just copy the code below with
some comments explaining what’s going on. It CAN be copy pasted into the custom HLSL node:

//we need to have a variable that we can add the blur totals up too
//float4 sum = 0.0f;
//we are creating an array of gaussian weight approximations
float BlurWeightsGaussian[] =
{
1.0f / 4096.0f,
12.0f / 4096.0f,
66.0f / 4096.0f,
220.0f / 4096.0f,
495.0f / 4096.0f,
792.0f / 4096.0f,
924.0f / 4096.0f,
792.0f / 4096.0f,
495.0f / 4096.0f,
220.0f / 4096.0f,
66.0f / 4096.0f,
12.0f / 4096.0f,
1.0f / 4096.0f,
};
//declaring variable for our loop
float k;
float i;

VERTEX
Render Targets
42

//First for loop for blurring pixels


//keep doing the loop for 13 steps
for (i = -6.0f; i <= 6.0f; i += 1.0f)
{
//for each step, offset the image a tiny bit to the left or right (depending on the input of the loop)
//and add it too itself. Because its weighted, we dont need to divide it by itself after
sum += tex2D(SceneColorTexture, tex + (float2(0.0f, i) * Factor * PIXEL_SIZE.y)) * BlurWeightsGaussian[k++];
}
//returns the float3
return (sum);

Congratulations! You now have a vertical blur. Continue the Camera Render chain to the next material, but this time
do not down scale the resolution any farther. We want to do another blur here, but instead of using a vertical blur,
we want do a horizontal blur. The material setup is almost identical for this step, but with some minor adjustments to
the code. Look carefully at the code below for changes to the for loop.

for (i = -6.0f; i <= 6.0f; i += 1.0f)


{
//Notice the changes in the order of the the Uvs getting shifted. Instead of rotatiing through float2(0.0f,i) we are
//rotating through float2(i,0.0f)
//This changes the direction of our blur.
//We also changed the part of the PIXEL_SIZE float2 to read the width value, instead of the size.
sum += tex2D(SceneColorTexture, tex + (float2(i,0.0f) * Factor * PIXEL_SIZE.x)) *
BlurWeightsGaussian[k++];
}

After that blur, we want to blur it one more time, again in the horizontal. You can just copy the exact same setup, just
remember to change out your materials and textures. Now it’s time to move forward, and start up-scaling our reso-
lution!

HINT: The factor variable that we plug into our custom blur nodes can be changed for each blur. To get that anamor-
phic quality, I like to lower the first vertical blur factor, then REALLY increase the horizontal blur factor the first time,
and find a middle ground for the second.

Let’s get up-scaling. There are not really any tricks to be had at this part. By now you know how to continue the chain,
so just repeat the process, but going up in resolution. You probably don’t even need to upscale the resolution to full,
but instead stop at half (since the image is nice and blurred you won’t notice the difference). The last step in this
process is your final compilation material, where you take your Tex_InitCap and add it to your half resolution to make
your final image.

VERTEX
Render Targets
43

This material needs to be set to a translucent blend mode (so we can put it in a post effects chain). In it, we want to
just add our blur on top of our Tex_InitCap texture. Unfortunately, the bilinear filtering does not always work with
this hacked method. To counter this I discovered if I add up all of my TRT’s that I saved out as I was working up my
resolution back to half (in our case only 2), then weight them individually to soften the effect I was able to remove
any weird pixelization that occurs. I also added in some basic exponent control, and saturation and tinting features
(for those of us who think anamorphic flares should be blue). The last step in this long process is hooking this ma-
terial up in a new post effects chain, and opening world properties and hooking it up! Now as you fly around while
in preview mode of your kismet camera, you should have the bloom effect up and working.
Once you have hooked this up, you may have noticed that the fi-
nal effect seems very delayed in editor. I don’t honestly know why
that is, but I have a feeling it does have to do with the cameras.
When I made builds however the delay was gone. Using Intel’s
GPU Frame analyzer, you can break down an individual frame of a
build with this effect in it and check to see that the down scaling
of the textures and everything works as intended. It’s a lot of work
so maybe you will just have to take my word for it.

I know that this effect is not the ideal way to get a lens flare in game. The UDK has a GREAT lens flare editor already
in, and if you want cheap, then I recommend you go with that more than anything. What is really important to
take away from this though, is the actual technique of saving textures. It lags in editor, but performs as expected in
game. This is big because it means so many post effects tricks that are deemed insanely expensive within the UDK
are now doable. Tricks like Kawase bluring techniques, light streaks (like the bloom found in Kane and Lynch 2), or
multi-sized and weighted sharpening and blooms. It’s very possible to use that bloom texture and mask in dirt on
the screen from any source that has a bloom, or even follow Unreal 4’s route of image based lens flares. Below is a
snapshot of my own custom bloom.

In closing, I hope everyone who stuck through this large amount of technical talk has learned something. It has
been a really long journey trying to figure this out, and sharing it with the rest of the industry is something I have
wanted and planned to do for a very long time. I know personally, that the journey isn’t done, as there are always
ways to improve, optimize, and show new tricks. I also wanted to credit all of the 3D assets in the above pictures to
Epic (they are from the Unreal Development Kit) and some of my code to the guys working on Studio Post-Effect.
Thanks for your time and maybe I’ll have an opportunity to share more in the future!

About Me
My name is Alexander Dracott and currently I am employed as an environ-
ment artist at Sony Online Entertainment in San Diego, CA. I was born in
Phoenix, Arizona but quickly moved to, and was raised in Portland, Oregon.
There I attended the Art Institute of Portland where I had a chance to push
myself by working on various projects with many talented students and fac-
ulty.

I have always been interested in games, ever since I started playing Word
Munchers in early grade school. That interest slowly turned into a passion
for the industry itself, and the process of making games. These days I have
been studying more and more technical effects, and how they can be in-
tegrated into pushing the quality of both art and storytelling. At work I’m
helping with Planetside 2, which has proved to be an amazing opportunity
to learn and work with a brilliant team. I can’t say what’s in my future, but
I’m sure it has some form of 3D art or shaders in it. Maybe even a lens flare
or two.

Alexander Dracott
w w w. d i g i ta l d ra c o tt . c o m

VERTEX
44

Tsvetomir Georgiev www.pstchoart.cghub.com


45

Rayph Beisner www.rebelconcept.blogspot.com


Glass Tunnel
46

Rapture
CryEngine 3 Bioshock Homage By: Scott Homer

If you’re reading this your jaw is probably firmly resting on your desk having feasted on the high poly mechs and sci-fi
goodness that gratuitously litters these pages, and have stumbled onto this for a cold shower. Well... grab a cup of tea,
pause Tor’s live stream and settle down whilst I breakdown how I achieved my Bioshock homage using CryEngine 3.

Why
In the wake of many personal projects that fizzled out during the early stages of 2012, the project blossomed from a
desire to do some casual high poly modelling. I found myself enjoying recreating the world of Rapture so much that I
kept finding more inspiration. Why Bioshock? Awe-inspiring visuals, intricate decor and industrial architecture... what’s
not to love?!

In this breakdown I’ll go through various workflows I used to create the assets in the scene, highlighting techniques I
employed to recreate the Bioshock atmosphere. I’m trying to write this with useful information for both students and
professionals (easier said than done!), but beware, this isn’t necessarily the quickest or even best way of doing things;
it’s just how I do it.

Let’s get started!


Planning
It’s good to decide the scope from the start in order to assess whether the project you’re embarking on is realistic with
the time you have available. Remaking the entirety of Bioshock in the hours that fall between when I get home from
work and when I drag myself to bed would take 10 years or more. So my aim was to create a large interior and then a
couple of subsequent areas that best represented the atmosphere of Bioshock. I would, of course, be using CryEngine;
as I was keen to showcase some of the features that I hadn’t had much opportunity to use during my day to day duties
at work.

VERTEX
Glass Tunnel
47

With scope in mind I constantly had to remind myself that the focus was quality and not quantity. Several areas ended
up being cut allowing me to focus on pushing the quality of the Main Hall, the Post Room and the Tunnel. After de-
ciding the scope of the project, the next step was to collect reference images which would help me to plan out the
environment.

I gathered references from Bioshock, of course, but also from across a broad spectrum of Art Deco inspired architec-
ture and interior design. I watched a collection of documentaries and got my hands on some really useful books (you
can see a full list of these at the end of the breakdown).

I found it inspirational to boot up Bioshock and run around taking screen shots. Just flicking through a collection of a
few hundred images taken during a play through allowed me to ‘dive’ (har har) back into Rapture after spending the
day in the Crysis universe. At this point I was ready to get stuck into blocking out; I will quickly go through a few things
to bear in mind during this process.

VERTEX
Glass Tunnel
48

The Block Out


For this project I made a fairly detailed block out for each area with simple geometry to scale (on the grid!) so that I
could be sure that I had no nasty surprises lined up for me. I found it useful to setup each shot before I began produc-
tion. I did this by dropping a camera into the scene and flying around to see what looked interesting. This helped me
focus my attention on where I wanted detail. Past experience tells me that without doing this you’re likely to spend a
week making something look good that isn’t even visible! At this point it’s useful to drop some lights into the scene
to get a feel for how the scene is going to work atmospherically. This also helps during the texturing phase, especially
when setting up my specular maps.

Lighting and Atmosphere


This is where I set up my “Time of Day” and also add a global environment probe (cubemap). If you can get the lighting
working reasonably well at this point it will help greatly with asset production. This isn’t to say the lighting has to be fi-
nal, but often a fairly interesting solution is a great way to see if the environment reads well during the blockout stage.
Creating moving refraction on the glass to give the feeling of the level being underwater was important to the final
look of the scene. I also added volumetric lighting and ground fog to enhance the atmosphere and add depth to the
composition.

Environment Probes
Environment probes in CryEngine are similar to Mirror Ball probes used in pre-rendered CG. These are used to capture
the environment around a certain point and create a flat image which can then be used to light your scene and add
reflections. They are extremely useful for creating localized specular highlights and also for realistically lighting spaces.
Setting them up is easy and they instantly bring your scene to life.

VERTEX
Glass Tunnel
49

To set up an environment probe in CryEngine, you must first drop an environment probe into your scene (located un-
der EnvironmentProbe in the Objects - Misc panel of the Rollup Bar), I find it is best to drop a global cubemap into the
middle of the entire environment with a radius for 9999 for the global specular values of the entire level.

This will create an overall cubemap of your level, which whilst being inaccurate will help to maintain a level of con-
formity in your specular highlights throughout. For areas that can benefit from stronger or more accurate localised
reflections I tend to go through the environment adding smaller cubemaps with much smaller radiuses for better
results where the global cubemap isn’t working well.

To generate a cubemap you must first disable all cube maps in the scene, and then click either “generate cubemap”
or “generate all cube maps” to capture the environment surrounding the probe. To see the result, reactivate all cube
maps. Theoretically, turning the probe off before capturing the cubemap should prevent issues with the cubemap
multiplying itself by itself and give the most accurate results possible.

VERTEX
Glass Tunnel
50

Contrast
It is important to have good contrast between light and dark areas in lighting, and the same can be said about architec-
ture. Soft curves contrasted with strong lines can create areas of focus. This can be seen in the strong vertical columns
of the Main Hall which are contrasted by their curved tops. This is also echoed in the curved roof which contrasts with
the straight vertical walls.

Noise
Detail draws the viewer’s focus in the same way that contrast does. Therefore noise in the form of detail across an
entire scene can make things very hard to read. Noise is something that is often most evident when placing objects
in a scene, however you need to be aware that to balance an image you must create areas where the eyes can rest. I
tried to create pools of noise complimented by more sparse areas to focus the player/viewers attention. One way to
cut back on noise was to have large bare walls with minimal detail so the eye is drawn to the focal point of the envi-
ronment.

Texture Creation
“If you make sure the scene looks good with just floors, walls and ceilings, adding props and detail should only make
it more awesome”- I have always found this advice really useful. If the walls and floors aren’t blocked out, textured
and lit at the start of an environment, the likelihood is that you’re going to run into a wealth of issues further down
the line when you find that the environment as a whole doesn’t really work. With this in mind, my first priority when
it came to building the actual art was to create these base textures. I’ll go through in depth how I created the walls,
and then illustrate some useful processes I used to create some of the other textures.

VERTEX
Glass Tunnel
51

Main Hall Walls


For the walls of the Main Hall area, I wanted to create a
dark, cold stone slab, based on a mixture of polished con-
crete, slate and basalt. I wanted the worn edges and dam-
age that is inherent to the porous quality of concrete, the
dusty chalkiness of slate, and the dark flat nature of the
basalt. Anything is possible in Rapture no?

The wall material is a blend shader, mixing together two


separate textures using a height map and vertex colors to
define the areas that are affected by each texture in the
blend. When creating blends I usually try and create two
textures that represent extremes; a clean version and a de-
stroyed version so that I am able to blend between the two
and get a result that can be used for multiple applications;
destroyed, partially destroyed and intact. For the wall tex-
ture I created a fairly clean (but overall worn) concrete
plate and then a heavily damaged concrete plate.

Base Mesh
I started with the clean version of the blend, this way I can
layer up the damage on top of this when I came to texture.
To begin I created a back plate to the size of the texture,
this was at a ratio of 2:1 (1024x512). This is used for the
mortar that fills the gaps between each concrete plate and
also as a low poly mesh to bake from. I snapped the plane’s
vertices to the grid and dragged out a rectangle at 1 meter
x 2 meters. I then rotated it 90 degrees so that in the front
orthographic view the plane is upright, facing the camera.
I tessellated this mesh in order to ensure it is subdivided
equally, so that in ZBrush the plane maintained its shape
and dimensions. The graphite modelling tools includes
a great “subdivision” rollout that I used to tessellate my
meshes without having to do it manually.

VERTEX
Glass Tunnel
52

From this I created the geometry for the actual


wall tile; this is simply a second plane of almost
the same size with a shell modifier to give it
some depth.

I aligned this to the back plate so that they in-


tersect each other; this prevented the tile from
floating above the mortar and creating strange
shadows when the Ambient Occlusion (AO) is
baked out.

These meshes were then both exported as .OBJ


files using the ZBrush preset in the .OBJ exporter.

After loading this mesh into ZBrush, I divided


it up a couple of times to make sure that mesh
is dense enough to support sculpting the edge
damage. I separated my mesh into its respec-
tive subtools to prevent accidentally sculpting
on the wrong area of the model (click “Groups
Split” in the Subtool panel).

I also added some polish and relax deforma-


tion (deformation panel – Polish 80 – Relax
80) to relax the tile’s edges and give it a soft-
er look. From here the concrete plates were
ready for sculpting. Subtlety is key; the clean
mesh didn’t need anywhere near the same
amount of detail as the damaged version. I
was quite conscious that pushing the clean
texture too much would create a lot of noise
throughout the entire scene.

VERTEX
Glass Tunnel
53

For sculpting edge damage I used a mixture of the Clay, Clay Tubes and Trim Dynamic brushes, these gave a good
balance of edge noise and smooth chamfering of edges. I then exaggerated this so that the wear was obvious at a
distance in the scene.

High frequency detail


I grabbed a concrete texture from CGtextures and dropped it into Pho-
toshop; this texture has the slight surface pitting noise (caused by the
air bubbles in the concrete when it is poured) that I would like to use
across the concrete tile. Firstly I created an alpha for use in ZBrush, to do
this I selected the pitted areas in the concrete texture using the “Select
Color Range” tool in Photoshop (Select-Color Range) and then used the
color picker to select the black areas, I had to tweak the fuzziness of the
color range in order to pick up some of the micro-details.

I then selected inverse of this (Select-Inverse) and then deleted the rest
of the texture, leaving behind a white background with the pitted de-
tails on top. In order to use this as an alpha in ZBrush, I simply inverted
the canvas (Image-Adjustments-Invert) giving me the inverse result.

Now, in ZBrush, I divided the mesh a couple more times to around 1.5
million polys. I created a new layer (so I could adjust their intensity (Lay-
ers panel - +)), I then loaded my new alpha into the Brush alpha slot of
the Clay tubes brush.

Using the DragRect stroke function, I simply dragged my detail onto my


mesh using a rectangular lasso type application. By varying the size and
tweaking the z-intensity of my brush strokes I was able to add some
more variance to my sculpt.

VERTEX
Glass Tunnel
54

To finish off, I added some slight large scale, low frequency noise
to the mortar between the tiles. This is only visible in the areas
where damage to the edges is severe between the plates of con-
crete. From here the rest of the work comes in the texture, so I
merged these meshes together and exported the high poly plate
(To do this, go to ‘Subtool-Merge Visible’ and select the merged
mesh from the ‘Export panel’).

You can also use “Subtool Master” which is included in the new-
er versions of ZBrush (and available from http://www.pixologic.
com/zbrush/downloadcenter/zplugins/ for older versions of
ZBrush) to export each subtool as a separate mesh.

I then returned to 3ds Max and exported out my back plate to use as a low poly and then baked it all in xNormal. As
you can see on the next page I generated the AO, normal and height map from xNormal. I used the CrazyBump to cre-
ate a diffuse map which can be used for slight edge highlights. To do this, in CrazyBump select “paste normal map from
clipboard”

VERTEX
Glass Tunnel
55

The resulting “diffuse” map is then tweaked to taste using the various sliders, I tend to try and make the contrast as
high as possible so it’s easier to separate the highlights from the mid-tones.

Putting the Texture Together


At this point I had all I needed to make my clean texture, so it was time to get started putting it together in Photoshop.

PSD File structure:


First off I loaded up a 2048x1024 document in Photoshop, (twice the eventual size of my texture) and created a group
within this for each of my textures;
- Clean diffuse,
- Broken diffuse,
- Overlays (general layers shared between both diffuse textures),
- Clean specular (to be pasted into the alpha channel of the diffuse),
- Broken specular (for the alpha of the broken diffuse),
- Clean normals,
- Broken normals,
- POM Height Map (for displacement)
- Blend Mask (the height map used to mix the 2 textures together).
- Junk folder for layers that I didn’t want to delete in case I needed them later.

VERTEX
Glass Tunnel
56

I find it useful to do this, and to also name my layers wherever possible to keep everything neat and tidy. I always cre-
ate my textures bigger than my intended size so that if I ever need to upscale them I can easily do this without having
to recreate the texture.

The diffuse:
As mentioned previously my main concern was ensuring that the clean concrete plates didn’t become overly noisy, I
planned to use the texture extensively so hiding that the concrete was so heavily tiled was vital. In order to mask rep-
etition, I rotated the UV’s of a number of the concrete plates; unfortunately the downside of this is that any details in
the texture must be readable even if the plates are flipped vertically.

The clean diffuse consists of mainly the AO overlaid onto a good concrete texture sourced from CGtextures, combined
with slight highlights using the CrazyBump diffuse map. I used monochromatic noise and motion blur to create a verti-
cal directional “run” layer and overlaid that on top also with a low opacity. For the grout, I sourced a rough concrete
texture and painted this into the areas around the edges of the tile. This gave the effect of rough mortar holding the
concrete plate in place. Finally I tweaked the brightness and contrast values to reduce the noise in the texture and bring
it into the right range for the scene.

The normal map:


The normal map required very little work; I generated a simple normal map using CrazyBump and masked this out using
the mortar layer in the diffuse group.

VERTEX
Glass Tunnel
57

Creating the damaged concrete plate:


Once the clean version of the concrete plate was completed I had a base to work with for generating the damaged
portion of the shader. The idea is to take the clean mesh and work into it to create a destroyed concrete plate. My
technique to achieve this varies. Often I just look at reference and free-hand sculpt the detail and other times I cre-
ate a template and work from that. The easiest and most realistic method involves gathering a number of textures
with the correct amount of damage and then merging these together to use as a guide in ZBrush. I have used this
technique time and time again to create damage throughout the project, some examples of which can be seen here.

VERTEX
Glass Tunnel
58

Using a template in ZBrush discourages your brain from forcing your hand to draw patterns in the concrete cracks as
this will break the effect completely. I tend to avoid using any one image, as often only a portion of a reference image
has the high frequency details that will both tile well and look interesting. For this example I quickly grabbed three good
textures and merged them together in Photoshop to use as a rough template, as shown below.

PROTIP – Removing Light Information from Photos


This is a really useful technique for any texture or reference image. On something this “rough” that I will likely throw
away it isn’t THAT important; however for final textures I always use this to remove light information from my base
textures. I do this by using high-pass to bring the tonal values roughly into the same range (Filters-Other-High Pass-255)
using a Radius of 250 pixels.

And then fade this by going to Edit-Fade-High Pass, setting the opacity to 100%, and set the mode to “luminosity”, re-
moving the hot spots from the lighting and bring everything into the same tonal range.

VERTEX
Glass Tunnel
59

(In this case I de-saturated the image but it is not necessary)


Back in ZBrush I grabbed a copy of the clean concrete tile (always keep the original!), and applied the concrete tem-
plate as a texture. This will serve as the basis of the sculpt. This presents the chance to get creative; I started tracing
some of the more interesting lines and bridging them together using the Clay tubes brush, digging out areas to create
some depth. It is good to think of cracked concrete as subtractive damage. Cracks take volume away from the mate-
rial so I usually try to avoid adding any outwards detail to the concrete as this is not how the material naturally reacts
to damage. It is useful to toggle the texture on/off occasionally to see how things are looking; I often play around
with the material too in order to better see what I’m doing.

VERTEX
Glass Tunnel
60

As the sculpt progresses I often try to refine areas as the bigger picture becomes clear, digging deeper in certain places
and just generally revisiting traced areas to add detail using a mixture of the “Clay-Tubes” and “Dam-Standard” brush-
es. During this process I often try and walk away from the screen to see if the concrete is looking noisy from a distance.
If this is the case I often remove some of the smaller crack details.

And here’s one I made earlier! This one has had a lot of the noise stripped out.

Baking
Here are some of the maps I find useful to generate from my high poly sculpt to put together a convincing blend. The
height map generated will form the basis of the blend mask; it is also useful for creating extra depth in crevices using
POM.

VERTEX
Glass Tunnel
61

Cracked concrete texture breakdown:

For the diffuse of the broken concrete texture, I worked on top of the clean texture; keeping this group visible be-
low the cracked concrete layer and then began working on top of that. I dropped my AO and CrazyBump diffuse on
top and began working into these to see what looked good. At this point I multiplied the height map on top with a
low opacity to increase the depth of the cracks between concrete chunks.

Another great way to make more interesting concrete chunks is to select a few random pieces and start darken-
ing or lightening them in different places to increase the contrast in the texture and make the concrete look more
separated.

In order to emphasize the chunks of concrete, I darkened the edges and used white highlights from the diffuse
texture around each piece to make them pop. For the gaps between the concrete chunks I used my height map as a
mask and started to paint in noise in selected areas to make it look like crumbled concrete. I worked into the cracks
with a black standard brush to polish up any areas that would benefit from some deeper crevices.

VERTEX
Glass Tunnel
62

Normal Map Breakdown:

Now for the interesting stuff! My goal here was to add height variance and add better definition in any cracks that could
benefit from a little extra love. First of all I created a noisy, pebbly normal map that added that little bit of detail to the
larger crevices, I did this by running a decent mud/dirt/ground texture though CrazyBump, and then overlaid this.
I masked out this noise in order to confine it to the cracks. I often do this a couple of times to get some variation in the
normal map’s deepest crevices, overlaying several normal maps (using the above technique) to increase the depth.

PROTIP – Overlaying Normal Maps


Normal map A is on the bottom, normal map B is on the
top. In order to combine these two normal maps, first
select normal Map B’s blue channel and press CTRL-L
(or Image-adjustments-levels) and change the output
levels to 128 (or 127), this will take the details out of
the blue channel and allow you to use the “overlay”
blending mode to combine the normal maps without
breaking the normal map.

From here things get more complicated, in order to add variance to the way that the texture receives light, I overlaid
normal map gradients on selected chunks of concrete.

This forces the surface to pick up light differently across the broken surface. A subtle effect that often makes surfaces
look much more dynamic than they would normally look, on the next page you can see how the normal map looks with
(left) and without (right) this effect:

VERTEX
Glass Tunnel
63

Here is how to achieve this effect.


PROTIP – Creating Light Variance in Normal Maps:
First I grabbed my normal map straight out of xNormal, and a normal map of a sphere. With this I start making normal
map swatches from opposite sides of the normal map sphere.

This gives us normal map gradients from left to right, up to down etc that can be then overlaid on top of our normal
map to fake the concrete chunks being angled slightly. I do this by grabbing chunks of concrete and dragging the gra-
dient across several pieces at once. Like so:

VERTEX
Glass Tunnel
64

This can then be combined with our original normal map by using the overlay blending mode. Adjust the opacity of this
layer and...Voila! We have a quick and easy way of creating normal map variance.

Creating the Blend-Mask


From here I needed to create the blend mask. This will tell CryEngine how the two textures should blend together. It is
a black and white image similar to a height map; however I tend to work into this heavily in order to get decent results.

VERTEX
Glass Tunnel
65

Blend masks are a controversial subject. Artists have their own methods of creating them so there is by no means and
a right and wrong way. I tend to try and ensure that my blend mask falls in a mid grey range overall as this will give
more flexibility in the blend. Too much contrast will mean that the blend isn’t a smooth gradient between clean con-
crete and broken. For this mask, I inverted my height map and added a clouds filter as an overlay. This meant that the
material’s blend had more variance; using a straight out of the box height map would give a very forced “on and off”
type blend, whereas a low frequency noise will allow the materials to blend together more realistically. The whiter
cracks meant that cracks will be the first part of broken concrete texture to come through in the blend.
Final Texture Breakdown:

On top is the clean diffuse,with the


specular in the alpha slot, and the
clean concrete normal.

In the middle is the half-sized blend


map (this texture doesn’t require the
same resolution as the other textures)

On the bottom there is cracked con-


crete, with specular map in alpha. The
cracked normal map and height map
(for POM Displacement)

VERTEX
Glass Tunnel
66

< Default values, all diffuse and specular are set to 186,186,186.

<Glossiness value is set to taste, 125 is somewhere between


being “shiny” and reflective.

< Clean textures are placed in diffuse and Bump map slots.
< The detail map is a high frequency normal map tiled indepen-
dently from the materials’ normal map.
< The blend mask goes into the opacity slot, this controls the
falloff between each part of the blend.
< In the subsurface slot I placed the height map; this will add
POM to our broken concrete, adding to its volume.
<Custom + [1]Custom contains the broken concrete diffuse and
normal.

< The blend Factor and blend Falloff defines the severity of the
falloff, these values often need to be fine tuned.

<The detail map values can be tweaked to taste, I have tiled the
detail map twice so we get small high frequency bump detail
on the concrete.

< Typically Fresnel scale and power should remain at their de-
fault settings and Bias should be the value tweaked for each
material.

<POM displacement and Height Bias are both linked to the dis-
placement of the cracked concrete material, tweaking these
values is case of trial and error.
< Shader Generation Params –
specular mask in alpha means that the shader uses the alpha
channel of each diffuse for the specular map of each half of the
blend.

<Detail mapping enables detail normal map parameters.

<Vertex colors, these are required for the blend as its place-
ment is defined by our Vertex alpha colors in 3ds Max.

<Parallax occlusion Mapping enables POM displacement.

<BlendLayer – Blend properties won’t be available until this is


activated.

VERTEX
Glass Tunnel
67

Hitting the Tiles. Some Useful Tips for Creating Smashed Tile Floors

So, after breaking down in detail some of the techniques I used for the high poly concrete, I thought it might be useful
to go through some of the different techniques I used to achieve the broken tile effect used for the Main Hall’s floor.

As before it is a blend, however this time I have employed a few more tasty little tricks to get more out of my material.

I’ll break these down into a few pro-tips to illustrate some of the craftiness I’ve employed to achieve this effect.

VERTEX
Glass Tunnel
68

PROTIP – Creating High poly, Broken Tiles:


To create high-poly smashed tiles (used in the damaged part of the blend) I created a high poly mesh to bake from. This
isn’t always easy, but I have a few methods which are very versatile and can be used for many different types of dam-
age. First of all, use the high poly base mesh from the clean tiles as the basis of the damaged tiles. Making sure that the
tiles are tessellated as much as possible, even subdivisions will make it easier for the tile shape to hold up once they’ve
been smashed.

Next, I use the Fracture Voronoi script (available from: http://www.scriptspot.com/3Ds-max/scripts/fracture-voronoi)


to break up my tiles into randomly sized chunks. To do this, select each tile using the picker at the top of the tool and
enter random values into the iteration/count inputs allowing the tiles to be broken up into multiple pieces with each
one different to the next.

VERTEX
Glass Tunnel
69

Repeating this process for all of the tiles leaves randomly generated breaks through the tiles. The problem now is get-
ting smooth edges using turbosmooth. Fracture Voronoi outputs meshes that are not quadded and are quite messy
(which are not suitable for turbosmooth). In order to make them suitable for turbosmooth add a “tessellate” modifier
to all of the pieces and experiment with values (in this particular case these values work well). These tiles can now be
turbosmoothed! Now onto the offset!

VERTEX
Glass Tunnel
70

At this point the mesh is smoothed correctly, but does not look particularly smashed, generally when tiles are smashed
up they displace and become scattered slightly. A quick method of doing this procedurally is to use “MassFX” to simu-
late dropping them back into place, which should subtly offset each tile.

Firstly, raise the tiles about 1 ft from the ground, then remove all instances of turbosmooth from your tiles (this will
speed up the simulation). In the modifier drop down select “MassFX rigid body” and apply the modifier to all of the tile
meshes. In the Physical Meshes tab, select the mesh type “original” (this will generate collisions using the actual mesh
tiles as the proxy).

In the MassFX Tools rollout, click the “Bake All” button to simulate
the tiles collapsing to the ground, they should all bounce slightly,
displacing one and other realistically (as above).

Create mesh copies of these using Max’s snapshot tool (tools-snap-


shot-snapshot mesh) and hide the MassFX meshes in case you need
to re-simulate these meshes in the future. Add turbosmooth on top
of this when baking.

VERTEX
Glass Tunnel
71

Tada! Smashed tiles with turbosmooth in a flash!

PROTIP – Large scale tile variance using unified detail mapping in CryEngine:

VERTEX
Glass Tunnel
72

In order to break up the repetitiveness of the floor’s tiling textures, I created a small 256x256 texture like the one on
the previous page which is used as a detail map. This texture simply contains a 4x tiled version of the tiles, (the original
tile texture has only 4 tiles!), and is tiled in the shader by a factor of 0.25, this means that for every 4 tiles of the diffuse
texture, the detail map is tiled once.

The detail map contains normal information on each tile, these are chosen from a normal map sphere and crudely
paint bucket filled in each block. When applied to our tiles they will simply slightly alter the brightness of our tile break-
ing up large floor spaces with random variation across the tiles.

Using the powerful unified detail mapping technology in CryEngine the detail map can also contain AO and gloss to add
further variation. This is a reasonably ‘cheap’ method of hiding our tiling textures by simply breaking up the surface
using a similar technique to the ‘creating light variance in normal maps’ technique from above.

In order to get the gloss, AO and normal map into CryEngine, the texture needs to be merged together in a specific way.
To do this, create a copy of your normal map and select it in the layer panel, navigate to the channels tab and paste the
AO in the blue channel. In the alpha channel paste your gloss map.

To save the detail map out, select “MergedDetailMap” in the CryTiff exporter panel; this will then compile your .dds file
for use in CryEngine as a detail map.

VERTEX
Glass Tunnel
73

PROTIP – Wet glass effect:


The effect that has received the most interest in the environment is that of the wet-look glass used in the Tunnel con-
necting the Main Hall the rest of Rapture. I will break down how this effect was achieved.

CryEngine boasts one of the most powerful glass shader systems that I have used, and with a little care and attention
it is possible to create some really impressive effects. For the interconnecting tunnels within Rapture I wanted to add
that little bit of extra detail and fake the look of condensation on the inside of the glass. Realistically the water out-
side of the tunnels would be extremely cold and the inside would (presumably) be much warmer, the result of which
would be condensation formation on the glass. To achieve this effect I had to carefully tweak the diffuse, alpha and
normal to achieve a visible refraction effect caused by beads of water on top of the glass.

To do this, I used a technique which fakes refraction in CryEngine’s glass shader, the “bump scale” slider effects the
severity of any normal map applied to the glass and increasing this effect increases the strength of the normal ap-
plied, thus creating refraction in our glass.

VERTEX
Glass Tunnel
74

Using a normal map to fake refraction is a useful way to get more dynamic results from glass. Once again subtlety is
key (it took me a year or so before I realised this!) but a combination of a large scale wavy normal map and a normal
map generated from a condensation texture will give the effect of glass with beads of water on top. This can be further
emphasized by adding white highlights from the condensation into the alpha of the glass.

The texture set up is quite simple, the refraction and highlights in the diffuse does all the work making the glass look
realistically wet and the normal gives the condensation refractive distortion.
Reference material

VERTEX
Glass Tunnel
75

At Crytek we have a yearly “learning development budget” that we are able to use to purchase materials, courses or
subscriptions that will further our abilities as artists. As part of my LDB for this year I purchased several books to use
as reference for the Bioshock project, these helped me grasp the historical impact of the Art Deco movement and
were invaluable sources of inspiration and reference during the project. These included:

-Welcome to Big Biba: Inside the Most Beautiful Store in the World - ISBN-10: 1851496645
-Art Deco: The Golden Age of Graphic Art and Illustration - ISBN-10: 1847862799
-American Art Deco: Architecture and Regionalism - ISBN-10: 0393019705
-Art Deco Architecture: Design, Decoration and Detail from the Twenties and Thirties - ISBN-10: 0500281491
-London Art Deco - ISBN-10: 0956444873
-Deco Devolution: The Art of Bioshock 2
-Beauty in Decay: Urbex: The Art of Urban Exploration - ISBN-10: 0955912148
-Erte’s Fashion Designs: 218 Illustrations from “Harper’s Bazaar”, 1918-32 - ISBN-10: 048624203X
-Designs by “Erte”: Fashion Drawings and Illustrations from “Harper’s Bazaar” - ISBN-10: 0486233979

Conclusion
So yeah... I guess to wrap this up all I can say is how much fun I had making this project; getting the opportunity to add
my own spin to the Bioshock universe was a great learning experience for me. I tried many techniques I haven’t used
before and hopefully expanded my skill set somewhat as a result. I hope that by putting together this breakdown I
have managed to pick out some of the more interesting techniques I used to create the art in my Bioshock Homage
project, and that some of you feel that you have learned something from reading this!

I really owe a lot to the awesome people I get to work with each day, I have learned a lot from them over the last 2
years and I do feel incredibly grateful for their insights. I owe a huge thanks to the Polycount community (<3), and also
a massive thanks to Ryan for taking the time to put together Vertex for us all to enjoy/drool over!

About Me
My name is Scott Homer, I’m 23 and I have worked for almost 3 years as an
Artist at Crytek UK. I live in Nottingham with my awesome girlfriend Jos. My
favourite games are Half-life 2, Bioshock (duh!), Crysis 2 and Tomb Raider 2.
I grew up in a small town in the midlands with varied interests that included
tattoos, gaming, Japanese cars and graffiti. I first began exploring the world
of 3D art shortly after finishing school.

During my final year of University I was unexpectedly offered an interview


at Crytek UK, I had always been a massive fan of Crysis and this was an
incredible opportunity I wasn’t about to pass up. After completing my de-
gree, I graduated from university with a First Class Honours and immedi-
ately began working at Crytek UK.

I am looking forward to contributing to many more projects in the future


and ploughing countless hours in my personal work too. Well what else am
I going to do? Go outside? LOL.

Scott Homer
w w w. s c o t t h o m e r. c o . u k

VERTEX
76

Simon Kopp www.simonkopp.de


77

Joshua Stubbles www.ivassago.com


MARS
78

The Making of MARS


Creating Hard Surface Designs By: Darren Bartley

Hey everybody, this is a walk-through of my usual work process when it comes to concept design. This particular guide
shows the specifics of how I go about creating hard surface designs but I use the techniques for pretty much all aspects
of my work, whether it’s hard surface, characters or even environments. It’s important to remember that these are not
hard and fast rules, it’s just what works for me. Let’s get started. My process is pretty straightforward and can really be
broken down into 4 simple steps:

Thinking
Thumbnails
Refinement
Finalization

Thinking
This part of the process is usually the most important. A good bit of mental work in the short term can save hours fur-
ther down the line. This usually consists of me taking the brief and just thinking about it.

For this piece I decided to create a heavy sci-fi utility vehicle. This is my brief and these few words are what I’ll use as a
springboard for most of my ideas. During this phase I’ll just let my mind wander and start to look up random reference,
slowly letting things build until I feel ready to commit to sketching. This stage sometimes takes only a few minutes,
sometimes it can take a few hours, however I feel it’s a very important part of my work flow.

VERTEX
MARS
79

Thumbnails
This is where the fun begins. The way I approach thumbnails is to make them fast and to make them loose. As a rule
I tend to spend no longer than five to ten minutes on each sketch. If I’m taking longer, I usually scrap it and move on.
I design in a very graphical way, looking for big bold shapes which I can then further refine.

An example of my thumbnails.

What I’m aiming for when doing these is to get a decent first and second read. The first read is the silhouette and it
needs to be recognizable and cool. The second is the major shapes within the silhouette and just like the first, they
also need to be cool and recognizable. The third read, the details, are also very important, but for me this usually
comes more towards the end of a design cycle.

When considering the brief for MARS I did a quick first round of sketches which looked like this.

VERTEX
MARS
80

I knew I wanted to have six wheels and a top heavy look to the whole thing. I kind of liked the middle left so I devel-
oped it a little further in the bottom three, making it look less like a toy and more functional. It soon became appar-
ent to me that the curved shapes that I had primarily been exploring were not what I wanted. Curved shapes gener-
ally suggest elegance. I wanted a more rugged, almost aggressive feel so I went back for another round of sketching.

You’ll notice that I tend to do these from side profile, this is to keep my mind focused purely on finding shapes and
not worrying about perspective or anything else.

At this point I have a pretty good idea in my head about where this is heading. I prefer the more angular forms as
they suggest strength and also a little bit of aggression. You can see that I have started to fix on one lower half/wheel
set up with variations on different upper sections. When I start to naturally do this I know I’m favouring a direction
and this is usually what I will stick with. At this stage I go back for a final set of sketches.

VERTEX
MARS
81

This is where I’m really starting to narrow it down and get a feel for the vehicle. When I start to branch off explor-
ing different views I know I’m ready. The sketch at the very bottom of the page is the one I like the most and the
one that I’ll take to the next stage. It’s worth noting that what I have at the end of each stage is just a springboard
for the next, just because I like this thumbnail here in 2D does not mean I will religiously stick to it in the refinement
stage, it’s purely a good starting point.

Refinement
Enter SketchUp. SketchUp is an invaluable tool for me as it is very fast and pretty intuitive, allowing me to build
fairly complex 3D prototypes in an hour or two. Being able to view and change my design from any angle is too
good to pass up and having a rough model also gives me instant ortho views and instant perspective, two things
which can be labour intensive. The trick to getting good results fast in SketchUp is not to approach it like any other
3D software, we are not looking to build watertight meshes here. There will be barely any connecting geometry,
everything will be pretty much floating and the topography is a mess but this doesn’t matter, the model will be re-
made properly by a modeler far more talented than me further down the line.

From a design standpoint, I use this stage to establish the major proportions, silhouette, secondary details and
tertiary details. I love being able to tweak a design in quite dramatic ways in SketchUp and throughout this whole
section of my process I will experiment with new forms and ideas. Ultimately I like to leave this section at a stage
where I’d be happy with the design no matter what, everything else added afterwards in the finish would just be
extras on top.

To start with, like with all of my art, I do a very rough block out to establish the major forms from
my last sketch.

VERTEX
MARS
82

As you can see I start very basic, building up volumes almost abstractly. Whenever I make a new shape in SketchUp,
be it the wheel or even the simple block out of the main body, I always save it as a component. This way, if I edit one
wheel, it will edit them all at the same time. This allows me to create quite complex shapes quite quickly. To mirror
your components so you can work on a model symmetrically (like ZBrush) simply copy it then flip it on whatever axis
you want the symmetry to work on.

I just keep adding forms and building up proportions, trying to get a right feel for the vehicle. As you can see in this
example, literally every shape I create is its own component, absolutely nothing is joined. I keep adding layers and
layers of shapes until I am reasonably happy with the general progress.

VERTEX
MARS
83

The way I detail this wheel is basically a microcosm of how I do everything in SketchUp. You create a relatively
simple shape, in this case the actual wheel itself. You then create some sub sets of smaller, more complex, yet still
ultimately simple shapes. You then copy them around the said object (hold CTRL whenever dragging or rotating an
object it to copy it), creating something that is more than the sum of its parts. Alone they are neither interesting or
complex, yet together, they form an intricate set of shapes.

My whole process in SketchUp doesn’t deviate from this. I just keep adding and modifying shapes, building up
forms until I am pleased with the general overall look.

VERTEX
MARS
84

All along I am experimenting with different elements, adding suggested functionality (or removing it) such as the
exhaust system between the wheels.

At this point I am relatively happy with the way it is going. I feel that the initial first read is good, it has a nice strong
silhouette and roughly matches the spirit that my initial thumbnail sketch suggested. I’m not convinced by the sec-
ond read yet though and continue experimenting with different shapes and rhythms within the secondary details. I
like the armour plating but not enough to keep it plastered all over the vehicle. This is not a tank, it’s a utility vehicle.

VERTEX
MARS
85

I simplify some of the shapes and add some storage capabilities to the rear of the vehicle. I feel the balance of
details versus places where the eyes can rest is very important in good design and this simplified version is a step in
the right direction. All too often I see things that are totally plastered with needless details that are superfluous to
the design’s needs.

VERTEX
MARS
86

After some final tweaks, re-introducing some elements from earlier iterations, adding some simple camera systems
and some very simple windows I’m ready to call this stage done. The vehicle looks cool, functional and has a nice bal-
ance of details which also leaves me with some nice surface area to play with in the final stage, the paint over.

At this point I could take a simple screen grab and paint over it but in this case I will do a very simple render and paint
on top of that. The reason for this is simply time. In the concept field its all about getting good results quickly, I could
paint everything from scratch but it could add an extra day onto the schedule when it could have easily been avoided.

Finalization
This final section is, surprisingly, usually the quickest. The designing is the hard part and that has been done already
and it is now just a case of going through the motions and making it look nice and presentable. For this I decided to
grab a render from a nice low angle to make the vehicle feel large and powerful.

VERTEX
MARS
87

This is a great base to start painting on top of, to really nail the concept as a whole. To start with I grab a wire-
frame only screen grab from SketchUp and overlay it on top of the render. I change the color of the sky to red as I
had liked it in that very early initial set of thumbnails that I did and I also started to slightly darken the shadows with
an overlay layer and a soft airbrush.

VERTEX
MARS
88

Next I added some dark values to the wheels and the body of the vehicle (a rubber type material that keeps the
metal plates together) using multiply layers as well as starting to block in some of the panelling and cut lines. At this
point I’m looking to add lines that look functional as well as aesthetically pleasing.

Now, much like in SketchUp I just keep adding details and reinforcing forms with subtle lighting adjustments. I use
a solid standard round brush with size set to pen pressure and basically just color pick using the ALT key. Slowly but
surely things start to take shape.

VERTEX
MARS
89

Now it’s time to introduce a bit of atmosphere to start to tie the whole thing together. This is done by simply us-
ing the airbrush on a separate layer and erasing out where it overlaps unnecessarily. I also decide its time for the
SketchUp scale woman to die and paint her out, replacing her with a simple spaceman style figure to lend scale to
the whole thing.

VERTEX
MARS
90

VERTEX
MARS
91

About Me
I have been heavily into movies and games for as long as I can re-
member and I consumed them at a ridiculous rate. I loved the world
building, the characters, everything about them. I have also been
into drawing since I was a toddler too but I never thought I could
combine these things into a career until I saw some Feng Zhu artwork
in an issue of Edge magazine (his Battle Realms stuff, it’s laser burnt
onto my brain). That was it, after that I knew. I wanted to do what he
did and there would be nothing else.

Cut to now and I’m a self taught concept artist with around 7 years
of experience. Concept artist is a bit of a misleading title as I don’t
consider myself much of an artist at all, I’m more of a designer. I try
to be a generalist and I love the initial stages of creation, the ideation
and the sketches but I get bored pretty quick with the boring stuff,
rendering sucks. I have worked on a few titles, one MMO for 5 years
which was cancelled and will never see the light of day and most re-
cently RYSE for Crytek. I still love movies and games.

Darren Bartley
www.fightpunch.blogspot.com

VERTEX
92

Damian Buzugbe www.omend4.cghub.com


93

Carlos Ortega Elizalde www.stroggtank.cghub.com


FARCRY3
94

Far Cry 3Ubisoft - Massive Entertainment


Multiplayer Visuals By:

This article was written by yours truly, Chris Radsby, but most importantly the input from the Level Artists, Level De-
signers & Concept Artists of Massive Entertainment – A Ubisoft Studio gives some insight to the Art and the thought
behind the levels of Far Cry 3 MP. Massive started working on Far Cry 3 in 2009 and by the release in 2012 the team
ended up with almost 80 people working together. It has been a long journey with lots of twists and turns but in the
end Massive created five game modes, ten MP maps, six COOP maps, six new characters, recorded in total 14500
lines and the FC3 team successfully managed fit all this onto the single disc.

CONCEPT ART & CHARACTERS


“The Concept Artists main task working for multiplayer and cooperative of Far Cry 3 has been to support the rest of
the art team by providing the Prop and Level Artists with concept work for props and environments. One key element
through the production of the project has been producing “paint-overs” of different areas of the existing maps to
improve their visual appeal and mood.” - (Miguel Iglesias - Lead Concept Artist)

No game development team is complete without concept artists and even though we worked on Far Cry 3 MP, we
still had dedicated kick ass concept artists to help us reach the visual bar that was set for the game.

VERTEX
FARCRY3
95

When working with the levels it’s very easy to get stuck thinking mostly about gameplay and performance, even
though we’re artists and want to make things look awesome we also need to remember that we’re making a game.
Placing rocks, roots and bushes everywhere can quickly make the experience annoying for the players. The concept
artists really helped us out though, with their minds free of gameplay and optimization they could just come in with
their keen eyes and give us critique and paint overs as to how we could make things look more beautiful, and what
a great job they did.

“ We are pretty happy with the final results in general, environments and characters. We managed to produce tons
of material to help the rest of the artists improve the final visuals of the maps. The maps look awesome! “
(Miguel Iglesias - Lead Concept Artist)

VERTEX
FARCRY3
96

“The process for the characters was a very long and challenging one from a visual point of view. The biggest challenge
was to come up with a strong visual design, recognizable and with personality but fitting within the boundaries of a
realistic setting and the requirements from game design. It was a hard balance to find. We started by having many
brainstorm sessions to get some initial ideas trying to be as crazy we could and from there I started to create a series
of thumbnails with many different suggestions. Then we started to narrow the options by selecting those we liked
the most and continued working on those and developing them more deeply depending of the needs until the final
result. “ (Miguel Iglesias - Lead Concept Artist)

When playing the co-operative mode you play as one out of four social outcasts: We have Callum the Scottish chef,
Mikhail the Russian hitman, Tisha the ex-combat medic, and Leonard the crooked cop. They all have their reasons
for being on the ship, but once the captain teams up with the islands’ pirates to raid the ship, it doesn’t take long for
them to band up and go on a wild chase across one of the Rook Islands to hunt him and their money down.

“I think we have some cool coop characters with a lot of personality. Even though I think in general we could have
gone a little bit more crazy when it came to pushing the limits of realism toward a more “designed look”, we arrived
at a great end result. That’s something you always have to deal with and compromise during production depending
on the needs from other fields with in the game team.” (Miguel Iglesias - Lead Concept Artist)

VERTEX
FARCRY3
97

VERTEX
FARCRY3
98

DIFFICULTIES of LEVEL & ART


Far Cry 3 uses streaming, the world is divided into Sectors and the rule is that the player loads 7x7 sectors around
him at (almost) all times. The world is also divided into Biomes, for example: If you’re on the North Island you’re in
the North Coastal and Jungle Biome and if you’re in the south island you’re in South Coastal and Grassland Biome.
On top of that the game is also divided into Thematics (Generic+Village, Town, WWII, Temple, Mines, Native) Generic
covers the whole world then you’ve got an extra thematic to put on top of that. Each thematic has their own textures
and props to go with it and the general rule was that there should be enough space between the thematics that the
player never loads two thematics at the same time. This is all to be able to control the texture-memory usage for the
consoles.

VERTEX
FARCRY3
99

This method works fine for single player but in multiplayer this posed a lot of issues. The engine still calculated a
7x7 sector grid around each player-position for all players, so in the extreme case players could be standing on the
far end of each map, loading two or more different thematics into memory at the same time and therefore crash
the console. This officially closed the discussion regarding making an open-world experience for the co-op. There
was not enough time to make the tech work the way we wanted it so compromises had to be made. The decision
was to go for a tight and controlled co-operative experience instead.

“One of the big challenges we had to deal with was the fact that we were a co-development studio following the
lead of another studio, in this case Montreal. There were dependencies for direction and assets in many cases. The
biggest impact this had on us was that it took a longer time to understand the details of how the tech worked and
as we progressed we realized that we hadn’t built our demo level in the optimal way – we would never achieve
target performance with that version and had to redo it.” (Lee Brimmicombe Wood - Lead Level Designer)

The goal was ultimately to make sure the art-direction was consistent with single player but cram in more objects in
smaller maps and still have decent frame rate with 14 players running around shooting RPGs at each other.

“All the other production maps had to go through big revisions to hit our FPS targets. That proved disruptive, and
we lost a little time, but at the same time it was an opportunity to revisit the layout and make big improvements to
the gameplay.” (Lee Brimmicombe Wood – Lead Level Designer)

One of the big challenges was Mudslide. The map has a town that has been ruined by a massive landslide laying
half of the map in ruins. It is not like anything you’ll find in the Singleplayer campaign so there were sacrifices that
had to be made to get multiplayer running. On the consoles we had to ditch the SSAO and Depth Of Field but the
majority of the performance came from clever occlusion. One of the major game modes is Firestorm. Firestorm is
an attack & defend game mode where you try to burn the enemies supply depots. If you succeed to burn both of
the depots at the same time you initiate a firestorm. The firestorm puts the whole map on fire and pretty much
changes the flow of the level by cutting off routes with big walls of flames.

VERTEX
FARCRY3
100

The level and technical artists knew that it would be a great challenge to even do this. The maps are already filled
with grass and vegetation alpha and now we needed to be able to have smoke and fire all over those areas as well.
We had to strategically place the fire-walls where we could have them but it was still dictated by design where they
should go. So compromises had to be made in those areas in terms of how much vegetation we could have there.
The same goes for our visual effects artists that pretty much had to make the best looking fire they could make for as
little cost as possible.

VERTEX
FARCRY3
101

DESIGNING MULTIPLAYER MAPS


Since we have a community dedicated to the creation of multiplayer maps I thought it would be a good idea to
gather our level designers thoughts about some of their designs as well as our fine level artists to give an insight to
what makes the maps look good. The production of the maps was an iterative process constantly bouncing between
level design and level art, but let’s start with the level designers role in the production and then onto the process.

“A Level Designers work on Far Cry 3 MP consists of three main pillars.

- Mission Design : The flow of the mission, pacing and to some degree story.
- Level Design: Ultimately responsible for how the map actually plays.
- Scripting: Implementing the mission design in practice using a visual scripting system.

The process of making co-op started out very humbly, with a simple mandate document. This would be a theme
or a set of requirements for the end result. What would then follow was a written design document outlining the
rough beats of the level, accompanied by a rough sketch of the layout. At this point in the project, the visuals were
still not set, and art resources spread very thin, leading to their direct involvement at this point being small.
The level designer would then go off and implement a first rough height field from scratch, followed by a first imple-
mentation of the scripts. We would then iterate on this and develop the design further. At some point later in the
process art resources would become available and assigned to the maps. In some cases, this late entry lead to some
fairly drastic changes to level layouts being needed, what with level designs heavy focus on gameplay rather than
visuals.” (Magnus Jonsson - Level Designer)

There were cases where the level artists laid the groundwork for level design by going further into the art-pass
before a proper level-design pass. This came to be because one of the biggest gripes that level art had with some
of the original designs were that they were flat and therefore lacked an authentic feel. Few of the original six maps
played with verticality. Rush Hour would be the one map where you’d actually travel up the side of some beach
cliffs but none of the maps were really taking it to mountain heights allowing the players to really see their destina-
tion from high up.

“Level Design for Rush Hour was actually done on an art pass. This was so the town & village layout along with the
topology of the terrain was more authentic when starting out. Whilst big changes occurred with the placement of
the village structures, where the road went and props for cover were added and moved, it meant the overall feel of
the map always felt somewhat authentic.” (Stephen Hawes - Senior Level Artist)

VERTEX
FARCRY3
102

“Level Art working closely with Level Design means you get the most out of the visuals and gameplay, it’s sometimes
great to have design do their thing, and then build the art into that. Other times, art will present new design oppor-
tunities to the map, for example: landmarks, navigational help, or even allowing for scenarios to take place and look
relevant to the surroundings. ” (Stephen Hawes - Senior Level Artist)

The level designers allowing the artists to come in and mess up their designs was very generous however there
were times when the level artists would go in and do their thing and break the maps completely. You would find AI
spawned inside of rocks, big bushes covering important objectives and even around the end of the production we
would find things floating 10 meters below the terrain-surface somehow forgotten in some crazy art-pass to make
things more beautiful.

“With the initial level design pass being focused on gameplay, the eventual first art pass had to be quite extensive in
some cases. However, when we were all directly involved in the production of the maps, things would be fairly prob-
lem free*, and I am very proud of what we have made.” (Magnus Jonsson - Level Designer)

VERTEX
FARCRY3
103

VISUAL ADVICE FOR MAPPING


The team learned a lot during this experience with Far Cry 3 MP so I sent a mail out to the team asking them for
some advice on how to achieve the Far Cry 3 look for use in the in-game editor and here we’re going to share some
of the simple techniques we used to make the maps. Big rocks are always popular when creating environments.
They fulfil the basic needs of gameplay, they’re big enough to be cover and big enough to make the environment
look more interesting. However big rocks placed in the environment will always look unnatural unless you go all the
way and apply the rest of the recipe to make it look good.

“Surround big rocks with smaller pebbles to integrate them better in the environment, use a small pebble texture as
well to help the blending into the sand of the beaches.” (Benedikt Podlesnigg - Level Artist)

VERTEX
FARCRY3
104

When doing this it’s also important not to go too far with the medium sized rocks. The problem we encountered is
pretty basic, big rocks are natural cover having too many rocks around important covers creates stickiness for the
players therefore in some cases on the multiplayer maps we had to go for the pebble texture only or in some cases
use rocks that the players can’t collide with. Here is a shot of “Fishing Village” showcasing the beach and how the
rocks are used to integrate the bigger rocks more naturally into the environment. Even the small cliffs have smaller
rocks blending into the pebble texture and then into the sand.

This type of recipe is applied on most levels since it helps make things look more natural. It’s already quite tricky to
spot people on this beach-area and as you can see together with level-design, level-art has compromised by putting
vegetation on top of the smaller cliffs to improve the scanning in this area leaving the beach with straighter lines
and easier to spot if someone moves in or out of cover. This also helps performance by putting all that see-through
vegetation higher up than the players field-of-view making it so that the game doesn’t necessarily have to render all
those alpha-bushes on top of each other. So in this case it’s a win-win for the level artists and the level designers.

VERTEX
FARCRY3
105

Building up Rocks & Cliffs and integrating them into the terrain: The most used objects in Far Cry 3 MP is probably
these cliff and rock assets (also available in the in-game editor). After the main terrain pass was done we used these
assets and pushed them into the terrain to make small to medium sized cliffs. We also made sure to blend the ter-
rain into the cliffs by sloping the terrain into the cliff-asset so that we never ended up with straight lines. Doing this
we ended up with a lot of repetitive objects throughout the environment but we made sure we added more vegeta-
tion to make it look more natural such as placing bushes and grass along the edges of the cliffs.

“To create the feeling of lushness we had to be very creative with our foliage placement. Moving palm trees and
plants with big alpha leaves close to the playable area and small leaf trees outside helped us to reach the lushness
we needed together with the 30 FPS target on consoles without sacrificing the overall look.”
(Benedikt Podlesnigg - Level Artist)

Another thing to mention is the use of props, just like the rocks props, can look out of place unless they have other
props to support them. Just like we integrated rocks into the environment we also spent time making sure that we
did the exact same with the props. The simple rule we followed was to make sure that all bigger props had com-
plementary medium-sized and small-sized props to create small compositions out of each area. In the case on the
next page, Rush Hour, we have the house and the car (out of frame) acting as the big props, the dumpster and the
barrels as the medium-sized props and the rest of the debris as small props.

It’s also complimented with a garbage/debris ground decal and a pebble texture underneath it all so it all comes
together nicely. It’s a lot of work just making sure that every little area looks good even though most of the art-
ists knew that players never would notice the difference but subconsciously it all adds to the visual experience. It’s
also a good thing that we had the functionality to allow us to “drop” props into the environment using physics. Just
placing three barrels hanging in the air, drop them and they would fall into interesting compositions by themselves,
perfect for when you want to set up a scene with a bit more randomness than hand placed objects.

VERTEX
FARCRY3
106

BREAKING DOWN A MP VISTA


Let’s talk a little bit about setting up certain vistas. One of the pros of working with multiplayer maps or cooperative
maps like this is that you know what angles the players will view certain vistas. This allows us to focus more on the
creative process of making things beautiful outside the gameplay areas. This beauty image here is a breakdown of
a certain area on “Hideout”. This breakdown pretty much shows the workflow considered when working with these
types of vista environments for multiplayer. The first thing a multiplayer level-artist did to make things more beautiful
was to consider the playable area and to make sure the terrain looked realistic enough for the type of vision the Art
Director and the concept artists had in mind.

The goal of this was to make sure that the terrain had an appealing composition before even going into more detail
and adding rocks and trees so that we could achieve more epic and fluid shapes. The time spent on the actual terrain
as the base of the scene is very important since it’s the base for the entire scene. It should not end up looking too
blobby, but come together beautifully with lines crossing each other giving us the parallax effect and feeling of depth
we were looking for.

VERTEX
FARCRY3
107

During this first step most of the terrain texture work


was also done. We were allowed/limited to having
four ground textures max in each sector of the map.
In essence the texture slots would be reserved for:
“Grass, Pebbles, Cliff_Y and Cliff_X.” The reason we
have the same cliff textures in Y and X is because they
are projected those directions, allowing them to tile
properly without stretching when you have really
steep terrain mountains. In areas without cliffs the
two reserved slots for the cliffs could be used for oth-
er ground textures like mud or sand. The same tech-
nique of building up cliffs using terrain is used here,
pushing the cliff assets into the terrain then blending
the two by smoothing the terrain out and sloping it
into the cliffs made it so that they looked more natu-
ral and integrated into the topology of the vista. We
also made sure all cliffs were blended properly with
the terrain using a gravel/pebble texture.

The next step was to add vegetation and more inter-


esting objects to the scene, hand placed trees mixed
together with the Dunia Engine/Editor zone-generat-
ed trees and foliage. The generated vegetation in this
case was used further back whilst the hand placed
trees were used in the front allowing the artist to
have more control over the composition of the scene.
In the end it’s the level artists job to be responsible
for the visuals of a map. Take it from blockout and
iterate on the feedback provided by the Art Director,
Concept Artists and Level Designers whilst keeping
track of memory budgets, frame rate, gameplay and
hopefully by the end of it you come out with some-
thing that is beautiful but also plays well.

Well that’s it! This article started out as something


really tiny to give some advice and insight into the de-
velopment. The article however ended up expanding
a little bit and I ended up wanting to show off some
more work done by the Far Cry 3 MP-team. I hope it
has been an interesting and pleasant read!

Christoffer Radsby - Level Artist Magnus Jonsson - Level Designer


http://christofferradsby.com http://www.linkedin.com/in/magjonsson

Miguel Iglesias - Lead Concept Artist Lee Brimmicombe Wood - Lead Level Designer
http://www.linkedin.com/pub/miguel-iglesias/2/254/825 http://www.linkedin.com/in/leebrimmicombewood

Benedikt Podlesnigg - Level Artist We also want to thank the whole Far Cry 3 team for
http://www.guriamo.com/ contributing to the game and the article. Far Cry 3
wouldn’t have been possible without you.
Stephen Hawes - Senior Level Artist Ubisoft Montreal
http://www.linkedin.com/in/stephenhawes Ubisoft Reflections
Ubisoft Shanghai

VERTEX
108

Debbie Tsoi www.echoparading.tumblr.com


109

Arnab Roy www.sagiarts.com


Double Team
110

DOUBLE TEAM
Alexandre Diboine
Concept Art Tips & Tricks By:

I’ll be honest, when Ryan came to me to ask if I would be interested in doing a breakdown of a picture of mine, I was at
the same time really proud and a bit anxious, as I have never done that in the past. With the previous sentence costing
me ten minutes of intense reflection, I realize that it is for me easier to draw than to write, especially when I have to
describe a process which is sometimes very hazy, even for me. Fortunately, creating a picture with the aim of explain-
ing every important stage of it was a good way to help me organize my workflow. It helped me to create a cleaner and
more effective way of working and allowed more time for reflection when it came to composition and graphic impact.

VERTEX
Double Team
111

The Idea and the Line


Being a big fan of vintage sci-fi pictures, propaganda posters and in a more general way very graphic compositions in
plan by plan, I opted for a classical “ team up “ placement : the two main characters in the foreground, and what they
are going to fight in the background. Finding the theme was not too complicated, I stayed in a domain in which I feel
comfortable: children and robots.

VERTEX
Double Team
112

I thus have made a very simple line sketch in ten minutes to have a global sight of the scene. I used just enough detail
to understand silhouettes and show a bit of the universe. I never detail my lines, the simple and good reason being I
am not going to paint under it all the time or respect every millimeter of it.

Color Blocking
From there I put the general colors without painting any lights. Simply rendering the ambient occlusion and certain
drop shadows (like if I only had an HDRI render in a 3D scene) which allowed me to have a better sight of the volumes. I
already know that I am going to apply a lens blur on the background, thus I begin to set up a hierarchy in order to have
an easier time when doing post effects. I began with the sky, then the giant robot, then the houses and the floor, and
finally the two characters, each of those elements on a different layer.

I then removed the lines, because the overall scene looked good without it. Sometimes I keep them visible in a reduced
opacity and paint over them, it depends on how I feel about the painting at the time.

VERTEX
Double Team
113

Lights and Mood


Then it was time to set up the lights, I already
had an idea where the light was going to come
from, thus no problem on that side. I wanted a
rather soft spot on the characters, and I wanted
to avoid hard lights to create a dramatic feel.
As the sky is cloudy, it should look like a light
peaking through the clouds. It also had to be a
pretty warm light to contrast with the coldness
of the background in order to make the charac-
ters stands out.

I created two adjustment layers above my main


characters (a levels and a color balance) and
bound them with a clipping mask to the charac-
ters’s layer (Alt+click between both layers), this
way, the adjustment layers will affect only the
characters and not the overall scene.

The only thing remaining is to settle the ad-


justment layers to obtain the desired intensity
of light and to erase the light in the necessary
places with the use of a mask.

I did the same thing with the same adjustment


layers for the background, and created an over-
all color balance on top of everything to find
a good atmosphere and to bring all the color
into more harmonious tones. From there I had
a solid base to begin to detail the piece.

I also cleared a bothering graphic knot, the gi-


ant robot’s leg (let’s call him Crabby) was in the
continuity of the child’s head. This hampered
the reading of the different elements, which is
never a good thing when you want a clear com-
position.

VERTEX
Double Team
114

Define the Lowest Level of Detail


I already know that the background will be blurred, but I nevertheless need information on crabby to help clearly de-
fine its different pieces. As it is the most distant element, the level of detail that will be applied to it will be the lowest
in the picture. This implies that no other element can contain fewer details.

To detail mechanical pieces, I proceed with a simple and easy 3-steps process:

From the base, I draw the part’s limitation and holes in a dark color (not pure black, but something rather close), then
I add some lights and reflections which are bouncing on the newly created elements. I also can add some new values
to introduce a more vivid and a less “out of the factory” feel. The last stage consists of adding in scratches and dirt to
sort of damage the places where some friction happens (usually on the border of any piece).

VERTEX
Double Team
115

Once this technique is applied to Crabby, the image on the bottom of the previous page is what we got. It is simple
yet effective and there are enough details to have a good comprehension of the overall character. I also softened the
lights on the left hand and put a highlight on the right hand so it stands out a little more. You might realize that the
arms cannot bend, which is not very important, and kind of serves my purpose. It is monolithic and disturbing. Its
mask and its clumsy blocked arms give Crabby an awkward and rather stupid look, which is what wanted.
I then started to work on the houses. Trying to be a little more precise but keeping in mind that I have to keep a low
level of detail. If I start going crazy on details in the house plan, I’ll have to be even more crazy about them in the
foreground. I wanted to keep an overall rough feel, so I had to be careful with that.

Define the Higher Level of Detail


It was then time to work on
the big part of the piece, the
main subject. It’s what people
are going to look at first and
is the part which will have the
most detail and information
in it. As I still want to achieve
a rough feel, I then decide to
polish things using the same
brush I used before, but at a
smaller scale rather than using
large soft brushes.

VERTEX
Double Team
116

For the robot I started by cleaning the shape of the head, filling the volume and adjusting the perspective of the neck
piece, cleaning up the border of some mechanical pieces. I also started to give a defined volume to the sleeves and
worked more on the design, using my initial sketch as a reference, especially for the shoulder part which gave me a
hard time. I made three or four versions of it without succeeding in any way. Using the initial line made me realize that
my first idea was fresh and dynamic enough and that I just needed to paint straight from it. Sometimes it’s the contrary
and you realize that your first idea was bad. This is the fun thing about painting, some things need to be changed, and
some don’t. For the rest of the process, I think the pictured steps are clear enough.

Halfway through detailing the robot I felt that the kid was a little off. I checked my values by looking at a black and white
version of the painting (using a hue and saturation adjustment layer in top of everything) and saw that he was indeed
not light enough. I thus did some adjustment layers again, only on him to correct this.

VERTEX
Double Team
117

For the kid, the process is the same, except for the fact that I use a softer approach, especially for the fabric, to con-
trast with the hard robotic shapes his friend is made of.

VERTEX
Double Team
118

For the soil, everything is explained on the pictures.

Compositing and Final Effects


This is the funny part, and for me the most enjoyable, because the goal is basically to make a picture more attractive
and gorgeous only by adjusting some sliders and curves.

VERTEX
Double Team
119

For this picture, I used a very classic adjustment layers combo of mine; I always start with a slight levels, to pump the
contrasts a little, then a curve only on the blue channel, then leveling it down in the yellows. This creates a harmony
of warm colors by softly decreasing the blue in a picture. It should be with caution, but it can really help the image.

I then used a chromatic aberration to give a focal effect (in CS5: filters > lens correction > custom) and then you have
three chromatic aberration panels, it’s up to you to find the one you like the most (I did a cyan magenta one). Using
the layers I created at the very beginning, I used a rather strong aberration on the robot/sky layer, a less strong one
on the houses layer, and a really soft one on the characters. I then do the same but with a lens blur, except I didn’t
put any on the characters. This is why it was useful to do four different layers in the beginning, I didn’t have to do
awkward layer masks to choose where the effect will be applied, everything was already done. I finally use a really
subtle smart sharpen on the characters, and it was done!

About Me
My name’s Alexandre Diboine, also known as Zedig on the internet, I’m a
young aspiring rough, chara and color key artist, trying to find my place in the
great family of concept art. I work exclusively with Photoshop when it comes
to 2D, for it is a software I love and understand. If it was a woman, I would
marry it.

I also do some 3D whenever I feel like it, or when it’s needed in my studio
here in Paris. I hope one day I’ll be able to work at Disney Animation, or Pixar
Animation, this is one of the many goals I set for myself, this and being able to
do 15 pushups in a row, but that just sounds unreal.

Alexandre Zedig Diboine


w w w. z e d i g . d e v i a n t a r t . c o m

VERTEX
120

Annex Labs www.annex-labs.com


121

Karen Stanley www.kazperstan.co.uk


HUNTRESS
122

THE HUNTRESS
Jonathan Fletcher
Texturing Tips & Tricks By:

Hey! My name is Jonathan Fletcher, and in this article I will be covering various texturing tips and parts of my workflow
for creating my recent ‘Huntress’ character. I decided to not set myself any real limitations for this character, using a
4096x4096 texture sheet for the body, a 2048x2048 sheet for the head and an extra 2048 for hair. The reason being
that I wanted to try texturing at a higher resolution than I am normally used to, with a larger emphasis on smaller
details putting that resolution to use. I feel like I failed in this regard with the high poly as I really skipped out on a lot
of details that could have been sculpted, however I was able to make up for it with the textures. So without any more
rambling, let’s get stuck in!

VERTEX
HUNTRESS
123

The value of your bakes


This seems like something that 90% of game artists are fully aware of already but it’s worth stressing the importance
of just how much you can get out of your bakes. Some people may still live in the mind-set that all you need is your
AO and Normals, but you can generate so much more from your high poly, which is why tools such as DDO and Cra-
zyBump are becoming so valuable.

I haven’t had much experience with curvature maps so I won’t pretend to explain them. I’m a big fan of cavity maps
and the well-defined edges it creates in your textures. You can use CrazyBump to generate a cavity map but person-
ally I am always happy with the result I get from a Photoshop action I made, demonstrated below:

VERTEX
HUNTRESS
124

By copying the red and green channels from the normal map, running an emboss filter on each of them with appropri-
ate angles, you can quickly generate a cavity map. This isn’t exactly mind blowing or new to anyone, but the benefit of
doing it this way and recording the above into a Photoshop action means you can quickly generate clean cavity maps
with 1 button without having to open another program or tweak a bunch of settings. For the most part I never feel the
need to tweak the settings for my cavity map.

Edge masks
Edge masks are a nice way to quickly and accurately mask off areas where you will want to focus certain details like dirt,
wear and shifts in color. Cavities will gather dirt over time and the more exposed edges, depending on the material, will
be worn down and lack color. I will cover some of these material properties later on!

For now, let’s look at a way we can generate masks for these uses. There are a number of ways to do this but here is a
simple way that you can record to create another automated Photoshop action:

VERTEX
HUNTRESS
125

Using your normal map you can get a quick edge mask with a few adjustments, clean and simple. Use this mask to
apply wear and discoloration layers to the edges of your model.

The examples here show use of an edge mask to assist in material definition. The leather has been worn and matted
around the edges from the stitching, and is darkened in the specular by a blurred edge mask, the result is a soft gradi-
ent in the specular.

The cloth example shows how an edge mask in the diffuse map can be used to give the parts of the cloth that are
exposed and repeatedly folded a worn, desaturated look, as wearing would cause the cloth to lose its dye color. These
quick subtleties that can be generated from your normal map alone speed up the process of texturing a great deal.

Ambient Occlusion Mask


It seems obvious but it’s worth mentioning. Your ambient occlusion bake is a perfect, accurate mask for all sorts of ad-
justments in your textures, inverting it and adjusting the curves can create a nice base for an overall dirt layer or color
adjustments. Sometimes to break up the repetitiveness of texture overlays I will have the ambient occlusion bake
adjust the opacity of it in a very subtle way, it helps to make your larger texture overlays feel a little more in place.

VERTEX
HUNTRESS
126

RGB / Material Masks


While there are always going to be situations where
you have to mask out your basic colors with a paint
brush you can easily shorten this tedious task by baking
out material masks directly from your high poly. If you
work smart when creating your high poly, and separate
the meshes where you expect there to be a switch in
material in your low poly (say, from a cloth shirt to a
leather belt) you can assign colors to these separate el-
ements before baking and extract that color later on in
Photoshop. The result will be near pixel perfect mask-
ing for all your base material colors, which will save you
a lot of time.

Because I had a lot of materials and elements I wanted


to mask out from the get go I used the slightly less clean
approach to doing this. Normally you would bake out
the R, G, and B values and use the channels in Photo-
shop to extract the masks, but I just used random colors
with no anti-aliasing in the bake. This way I could have
as many masks as I wanted and I would just have to use
the magic wand tool and right click, select similar to ac-
quire each individual selection mask which I then gave
to a base color at the bottom of my PSD.

Here is the baked material mask for the body. You can
create one by simply baking out a diffuse map in 3ds
Max with nothing but colors.

World Space Normals


Use a world space normal map bake to create a directional mask (usually just the up/down vector) by just copying the
Blue channel to a mask. Because light is almost always going to be from above, it’s a nice simple way of masking out
areas more exposed to light.

Base Colors
As soon as I have all my bakes and masks set up I like to start finding my base colors. Even when texturing at a high
resolution it’s important to not forget the basic principles and not lose sight of the big picture. This is the time to focus
on your color scheme, gradients and values. Making sure the texture reads from distances, has contrast and a color
scheme is more important than any amount of detail. It is important to remember that nothing is set in stone and as
you progress with detail in your texture you can always tweak your base colors to be more fitting.

This is a problem that I run into regularly but it tends to just work itself out as I move forward. I have a habit of working
at a much lower contrast to begin with and as I introduce more detail to the texture I will adjust my base to add more
contrast without screwing up my detail pass, which is easier to work on without such extreme values.

Texture Overlays
There is a lot to talk about regarding texture overlays as it a very large portion of what makes the texture. Applying
layers and layers of photo grunge for the sake of having texture is obviously the wrong way of going about this. The
key thing to remember when using photo sourced detail for your textures is subtlety. These overlays are part of your
texture’s composition, not all of it.

VERTEX
HUNTRESS
127

As a rule of thumb, overlays are usually more intensive in the specular map than the diffuse. The overlays used in the
specular map are very often what defines a material the most. Whereas clean, subtle details and base values are what
makes the diffuse map. The image here shows a leather portion of the character’s clothing, where using an overlay I
was able to achieve a nice cracked, old leather texture to it. The leather has a subtle blue-ish green specular to give
a rubbery feel.

Take only what you need!


The great thing about sourcing details from real life is the unique, imperfections of the material and the ways it can
be applied to your texture. Leather is a great example as beneath its rubbery, shiny exterior is a very rough, scruffy
surface that makes for awesome contrasting details on your exposed edges.

For example, in this image you will see an edge at the top of the boot that has been scuffed and worn to expose this
lovely beige color.

VERTEX
HUNTRESS
128

You could use your exposed edge masks to do this, and


can, but doing something unique with an overlay looks so
much nicer to me.

This photo from CGTextures is one of the textures I used


for a lot of the leather imperfections. I only want the
bright yellow/beige parts, so I need to remove the darker
portions of the texture. The simplest thing to do here is
duplicate it, desaturate and adjust the curves to create
a grayscale mask which you can use to extract from the
original texture.

You can also use blending options to exclude a range of


values from the texture, and then merge it to a blank lay-
er to apply the transparency.

VERTEX
HUNTRESS
129

Placement
For certain materials, such as the knitted scarf, the cloth texture needs to follow the curvature of the model. In an
ideal world everything would be straight in the UV’s but it’s not always possible. A good way of positioning your over-
lays is to use the warp transform tool in Photoshop to accurately account for curves on your surface when using large
scale overlays and patterns.

VERTEX
HUNTRESS
130

This may seem incredibly obvious, and I don’t mean to imply that using warp transform is a ground-breaking thing but
it’s the difference between just slapping a cloth texture on something and taking the time apply the texture properly
that will make the result so much better, and believable. This is a situation where it would be easy to hide this behind
noise or by using a low scale overlay but choosing to apply things properly pays off in quality. I was happy with the
result of the scarf and the nice ribbed pattern I got around the bottom edge.

Specular Contrast
As mentioned earlier, the details in your
specular map are usually more intense. This
harsh contrast of detail is what will give a
surface its materialistic look, and not just
end up looking like plastic. This also applies
to your specular exponent (gloss) map.

In this example, I show the difference be-


tween the diffuse and the specular of a
leather portion of the knife holster. Every-
thing about the diffuse map is subtle and
more attention is paid to overall values.
The specular map has very dark contrasting
scuffs of wear around the edge, where we
want to avoid specular.

To do this you can use simple scuff brushes


and masks that you can create yourself or
find online for free. Don’t overdo it though;
simple large scale wear that is appropriately
placed as well as the generic overlay for the
surface detail is usually enough.

VERTEX
HUNTRESS
131

Skin and High Pass


High pass is a Photoshop filter that takes a sampled image and removes certain high values from it whilst preserving
finer details. Using High pass with photo sourced textures can create some very interesting results. It is very useful for
creating skin overlays with good middle values useful for nice discolorations and imperfections. You can pretty much
take a photo of skin, run the filter over it and get an instant result. Choosing a radius that is too low will lose too much
of the discoloration, so a radius of around 20-30 usually works best.

When creating the specular map, take into account the areas of the face that become oily/wet over time from expo-
sure and hand rubbing such as the tip of the nose and parts under and around the eyes and forehead. These areas
are rubbed often, are oilier and require a higher specular value and discoloration to appear more realistic. Intensify
the overlays in the specular map to make the details more prominent, such as the cracks in the lips, and skin wrinkles
around the eyelids. It’s hard to notice and often a wasted effort shooting for subtleties in Unreal but it’s worth men-
tioning none the less.

While it’s nice to go into detail don’t forget the face’s skin colors and values at a base level, having more red/warmth
in the nose and cheeks, darker blue/purple colors around the eyes and colder blue and yellow tones around the lower
areas of the face. Don’t go overboard with it though, keep your base colors subtle. With a few good high pass layers,
skin becomes much easier!

VERTEX
HUNTRESS
132

Stitch Brushes
While it is common to sculpt stitching in the high
poly, there’s nothing stopping you from also using
the easy method of just creating stitch brushes in
Photoshop. It’s a very quick way of adding more
detail and really helps sell the materials. It’s one
of the small things that takes very little time and
can really push the quality of your texture.

Start by creating a simple alpha for your stitch,


whether it’s just a line, a cross or whatever pat-
tern you feel like. Create a single segment like so
and define the image as a new brush.

Then, by changing the shape dynamics to allow brush stroke direction, as well as spacing to align each stitch segment
perfectly, you now have an easy to use stitch brush!

One of the advantages to using these stitch brushes in Photoshop as opposed to sculpting them is that you don’t have
to worry about masking them all out after your bakes.

Simply save the brush preset and paint away! The fact that they are a separate layer allows for more control over in-
tensity, color and placement.

Fur
Fur is something that should be kept very simple, with an emphasis on the overall color and gradient from the root
to its tip. Adding any contrasty strand detail will just make it appear noisy. Some fur is interesting not for its miniature
detail but the large clumps it forms, layer these clumps with a gradient and you can achieve some very nice soft, mot-
tled fur.

VERTEX
HUNTRESS
133

For the larger gradient, I used vertex colors to multiply the diffuse, creating darker layers as it goes down. Creating
the alpha masks themselves is easy. Photo sourcing can once again help you extract a decent alpha, which you can
use as a brush to create your clumps. Just remember to keep the finer details at the tip and try to keep most of the
root and middle portion of the clump solid. You want the root of the layer underneath to be more visible to provide
a nice backdrop for the layer above.

The diffuse should be a very simple gradient with almost no texture detail, which just becomes noise after it is re-
peated many times. The softer and cleaner the mask and diffuse is, the more believable the fur will be.

VERTEX
HUNTRESS
134

Conclusion
I feel like there should be more to cover in this article, but when it comes down to it, texturing is a fairly simple process
once you start to use all the tools at your disposal. It’s good to always think about how you can simplify processes by
creating and adjusting masks. You may be surprised by how much you can accomplish in your textures from just base
colors, simple overlays and edge masked details. Anything you can source from your bakes will help you immensely. Not
only is it a massive time saver, but the results are incredibly accurate.

To sum everything up, my main advice is to just not go overboard with your textures. A lot of artists resort to throwing
layers upon layers of grunge onto their textures that either appear too noisy or cover up the lack of material definition
to appear realistic. For some styles of games, it may work but you should aspire to be able to define materials as cleanly
as possible in your textures before worrying about how dirty things should be.

VERTEX
HUNTRESS
135

This character model was an extremely iterative pro-


cess for me. I learned a lot but it is not necessarily
shown in this piece. My overall view on this is that it
was not as good as I had hoped, for a number of rea-
sons. A lot of these reasons are to do with the design
and execution of the character itself, as well as poor
decisions made whilst creating the high poly mesh.

A lot of mistakes were made, and a lot of mistakes


had to be corrected at very awkward times. It was al-
ways a case of changing things that were sometimes
past the point of changing, and toning things down
in places.

It is good practice to look at what you have and al-


ways focus on the big picture. Ask yourself what you
can change to improve things, whether they are sim-
plifying texture details and removing noise, adjusting
the low poly mesh or balancing your base colors.

My point is that it’s best to not commit to anything


in your texture until you are truly happy with it. Feel
free to adjust anything at any point because every-
thing you do will affect how you view your art and
choose to improve it.

Anyway, I’m sure there is much more to cover but


hopefully this article has helped you in some way and
that you found it worth your time to read. I enjoy the
opportunity to help whenever I can and appreciate
the opportunity to share my thoughts here.

About Me
Hi, I’m Jon. I work as a Character artist at the London based
studio ‘Splash Damage’ with some of the best artists I know
(which can be pretty daunting at times!). I have been work-
ing here for almost 1 year now and it has also been my first
job in the games industry, excluding bits of contract work on
the side beforehand. I’m a big fan of stylized, painterly art in
games, and do my best to work well in that field of game art.
It is something I enjoy tremendously and have adopted as a
personal style. Other than my job, I’m a pretty normal chap!

Jonathan Fletcher
w w w. a r t p a n d a . c o . u k

VERTEX
136

Chris Sears www.ccsears.cghub.com


137

Mike Hill www.mikehill.cghub.com


Single Render
138

Single Render Single Render Environment By: Rense de Boer

In this article I would like to share my experiences creating a single frame, rendered environment. The goal of this ren-
der was to get a better understanding of high level environment art. To stop seeing it as a dynamic world for a moment
and use the 3D space like a canvas instead.

Building this scene helped me to better understand how an image can be viewed and what contributes to it. This in-
cludes how big of an impact differences in volume, shape and lighting can have on the composition. To avoid confusion;
a single render is an environment built around a fixed camera, where you do not grab multiple screenshots or view
the scene from multiple angles. Instead it can only be viewed from one angle and all aspects of the scene are tuned to
enhance that shot.

Thoughts and Goals


Most of my experience lies in creating more organic forms of environment, but I wanted to test my abilities by building
a complicated, hard surface, SCI-FI scene in Crytek’s CryEngine 3. Since these objectives were largely foreign to me, I
needed to work out a plan and get a better understanding of some of the basic principles before I started. For instance,
how do I mix unique parts of the environment with the reuse of modular assets? How does the engine handle what I
want it to do, and what kind of pipeline setup would allow me to experiment with different ideas efficiently?

I decided that building a single render would be a time efficient way to learn about these things. By choosing one static
camera angle I only had to build the environment visible from that one spot rather than a complete detailed environ-
ment that would be needed for a multi-angle or moving shot. In order to keep this exercise simple I decided to avoid
creating many unique looking details such as high poly meshes or polished textures, and instead focused on the key
elements of the scene.

VERTEX
Single Render
139

Here is an image of what the scene looks like in 3ds Max. It gives a good overview of how compact the area is.

Getting Started
The scene I built takes place inside a corner of a human spaceship in the Halo Universe based on a concept by Bungie
Studios Concept Artist Frank Capezzuto.

VERTEX
Single Render
140

From this concept I built a simple block out. It was just a set of rough shapes to represent the large to medium volumes
in the scene. This was enough to help me figure out what dimensions I had to work with. From here I decided what
could be built using modular pieces and what should be unique geometry. In many cases modular parts would be a
great way to minimize the amount of work and quickly create the main surfaces. Because I reused tiling textures it was
very easy to create unique surfaces without having to worry about their UV’s and details, making this approach very
efficient.

Next, I wanted to figure out how to put my environment pieces from Max together in the engine. Since these were
all exported as separate objects from Max, they should fit together in Cry and update as I continued to work on them
without a problem.

I quickly ran into trouble doing this. The alignment between what I had set up in 3ds Max and the engine caused some
issues when I would step off the grid. I was not able to snap the environmental objects into place to create the same
scene I had set up in Max. The solution I used was to snap all my pieces in 3ds Max instead, not just making single
pieces but creating the entire environment and then exporting that as chunks to the engine.

To ensure my placement in the engine was precise, I snapped the pivot point for each part to the origin while still in
Max. This way after I imported a part into the engine I could just add it to the scene, type 0,0,0 for the coordinates and
never worry about it being out of place. Getting this problem out of the way was a big step in making progress. I could
now start building my environment knowing how it would transfer between software.

Customizing
I used a lot of customization in order to simplify some of the steps needed to create an environment. As well as adjust-
ing keyboard shortcuts I made use of my own custom tool bars. In these tool bars I can gather my most used options for
what I feel fulfil my current needs. I have found that I rarely enter the modifier tab and I no longer spend time searching
for options.

To add one of these tool bars, go to “Customize User Interface-> Toolbars, New” and simply drag and drop options from
the list into your menu.

VERTEX
Single Render
141

I highly recommend browsing through the options


when creating these tool bars. Max offers a ton of
useful functions that do not show up in the inter-
face by default. They are there, but hidden. If you
come from a different software package like Maya,
some of the options you might be looking for could
be hiding in these customization panels.

The Transform Toolbox is a menu from 3ds Max. It


allows you to quickly manipulate the pivot of an
object, or the object in relation to its pivot. I have
it added to my most used options to quickly call up
the menu when needed.

Another great way to customize 3ds Max is to


change your Quad menus, the panels you control
with the mouse. To do this, go into “Customize
User Interface-> Quads” and here either manipu-
late the default settings or add a new menu.

I cleaned out the main panel and placed some of


my most used options there.

On the second panel I placed actions such as Bevel


and Extrude, and on the third panel I set my snap-
ping options. I use the “S” key for purposes other
than snapping. All keys within this area should be
for your most used actions.

Building the Big Picture


Now that I had the basic setup for the scene it became easier to know what direction to take to finish it. I started add-
ing more shape to areas I was confident with, going from spot to spot until I was satisfied with the results.
For this scene, the equipment on the wall section was a good place to start. By blocking this in further and moving on
to other areas I could more accurately measure how my parts were going to look.

I did this by looking at the concept for “landmarks”, key elements in the image which I could draw connections be-
tween. For instance, there might be an extruded element on 1/3 of the length on a wall panel, so I knew where to
place this extrusion. From this point there could be a ground panel that is the other 2/3’s wide going across the room
and so on.

However, at this point I did not add full details. As I mentioned earlier, I was treating the render like a canvas, and just
like drawing or painting, you don’t want to dive into details before the whole image is sketched out. From there you
work by adding more and more detail into the big shapes.

After I had updated a lot of the existing geometry I continued to add things that would help me see the big picture.
Things like the pipelines, grids and handles, but also materials and lighting. By taking a step back from creating the
geometry for the scene I was able to start focusing on the materials, and applied a generic metal shader to the scene
to give it a rough representation of its color and specularity.

VERTEX
Single Render
142

Beneath is my favorite metal texture that I use as a base for a lot of materials. Feel free to download it and give it a go.

Lighting
From the concept I had a general idea
on how to do the lightning. By creat-
ing a shadow mesh I prevented most
of the external daylight from entering
the scene. It is a simple shape bigger
than the scene with its normals fac-
ing outwards so it casts a big shadow
over the scene. Since most of the sur-
faces in the scene have its normals
facing inwards the sunlight would
otherwise come through.

By tweaking the time of day the am-


bient light that did affect my scene
became a base for the rest of the
lighting. Next I added various light
sources to create a mood. Something
that helped me do this was assigning
a shadow map to act as a filter to cast
a more broken up, random form of
light.

Minespot.dds can be found under Game/Textures/Lights

VERTEX
Single Render
143

By selecting your light source and going into Entity properties you can assign a texture to act as your shadow. The
texture works just like an alpha mask, where it is white the light comes through, where it is black it stops casting light.
With this you can create light effects, ambience or create the illusion of something being in front of the light. For my
scene I use it to add the feeling that light gets hindered and distributed by various cables and equipment that can be
found in a ship.

The texture used can be as simple as some brush strokes to filtering out elements from environment photos. I would
recommend trying various textures for this setting to see how it reacts, and what happens when you start moving or
rotating the light source.

The majority of the bevels and line work in the image above was modeled in because there were some benefits to
doing so. My initial reason was to not have to rely on normal maps to create these shapes and modeled geometry
would react well to the light sources and render out nice and sharp.

This also allowed the textures for these parts to no longer be unique because there was no layout specific normal
map. UV´s did not have to be unwrapped in a specific way but instead could be a lot more simplistic. It also now sup-
ported tiling of the texture, allowing a high texel density to create a nice sharp surface. All of this saved me a signifi-
cant amount of time. Now that I had all of this set up I began trying out other things I knew I needed like text decals,
alpha planes with dirt on the floor, light rays coming from the ceiling and lingering smoke from the corridor.

VERTEX
Single Render
144

Because the perspective never changed I could


add static effects, a single image out of an other-
wise animated or dynamic effect. The image here
shows the mask I used on an alpha plane to cre-
ate the lingering smoke for the corridor. I added
a sense of direction and falloff making it a perfect
fit for my scene.

Normal Map Decals


Since I was using tiling textures, and was not able to make use of the 2nd UV channel with a node based shader as I had
planned, I was motivated to think outside of the box. In order to use smaller normal mapped shapes I had to add them
separately. The decal system was perfect to project these on the surfaces and not just have them floating.

By cloning the material of the underlying surface I could make it look like it matched up and by applying an alpha mask I
could get rid of any pixels of the normal map that were not used. This made sure the diffuse left no real obvious seems.

I took the process one step further and made a sheet of unique normal map shapes as well as a paired diffuse and
specular map. Now with some dirt and scratches complementing these shapes, the transition would feel rather natural.
The benefit of having all these shapes separated from the main model is that they can have a high resolution and be
easily copied around the scene, quickly adding detail.
An example of adding decals and complimenting contours by using vertex colors.

VERTEX
Single Render
145

Making Passes
At this stage I had modeled a fair bit of my scene. But since I had avoided creating unique textures that contained a lot
of details, I was forced to find them elsewhere. It was a real challenge to figure out what to add and where. I was able
to refine the look of the scene by creating differences in geometry, changing materials, adding more detail through
decals and using lights in different ways. I took my time making iterations with this trying to figure out what worked
well and what wasn’t effective because that is where I found the greatest room to improve my techniques.
How I would handle these aspects and get the most out of them.

For instance, I had two types of wall panels that used a specific pattern in the normal map. I redid the pattern on the
maps over and over. I was finally able to get it right without it being too chaotic or too uninteresting, but found it a
challenge even without a unique diffuse map. Another thing I did was to create specific highlights by making use of
hard surfaces and rounded shapes in combination with light sources to help the scene read better. This brought out
a lot of detail and by doing this I got a way better understanding of how these two work together.

The example beneath shows three corners. The first corner is a hard 90 degrees, the second is chamfered with hard
edges and the third is round and smooth. Every time I build something now, I use this example as part of my building
process because they all react different to the light they receive.

VERTEX
Single Render
146

The first corner is so harsh that one side catches light and the other is in shadow. The second corner handles light a lot
better. The chamfer in the middle is actually angled towards the source and becomes bright. Having these highlights
come forward can be a huge advantage when building content, it makes the scene feel more detailed and realistic.
The third corner is rounded and picks up an even bigger range of light. You can see it has falloff light information.

Early in the process of creating my scene I had too many angles and not enough round or organic shapes. This resulted
in the scene reacting poorly to light sources. By only having hard angles, I was missing a lot of information and it read
very differently than what I wanted. Once I started adding in softer edges I found the opposite to be true as well.

With too many rounded shapes my scene felt blurred and soft. Once I started using the round shapes to catch light and
the harder lines from the chamfered edges to add detailed lines and sharpness to the image I found a much healthier
balance in my composition. In the previous example, the chamfer and rounded edge are very broad and cover a large
surface. In the scene I used very small chamfers to get highlights and add detail without having an impact on the actual
shape of the object.

Composite Lighting
What I tried to do with the render was to make sure light caught the subjects in a way that brought out more details.
In most cases this can be achieved by building a more photography inspired light setup. When I played with the lights
and shadows I emphasized details and shapes that were already there, making shapes more readable with tiny hints of
light and making the specular map jump forward.

It would be a shame to put a lot of effort into an art piece and then not do it justice in presentation.
The image below gives a good impression of what sort of details can be accentuated by using lights and shadows cor-
rectly. For this shot I tried to look at every part of the scene as if it has its own studio lighting. I placed small light sources
that did not disturb the global lighting.

VERTEX
Single Render
147

For rounder shapes I preferred to have multiple light sources reflect on it, as it revealed more of the geometry. Also
note how the shadow in this case makes the turret feel more “grounded”. Here is a good example of what multiple
light sources can look like on an organic surface.

Since scenes built in 3D can lack ambient lighting, faking it by adding more light sources can be a huge help improving
the image. Ambient light does not always appear in a 3D environment as it does in real life. We might be using a clean
light setup where just a hand full of key lights are influencing the scene with no bounce or random sources that have
any impact on how the surface looks.

When I did this environment there was no performance limitation, and because I had a fixed camera angle I didn’t
have to worry about the lighting changing. This allowed me to create the optimal lighting for the one rendered shot
and not worry about anything affecting the image in a negative way. By adding and trying out all kinds of extra lights I
was able to enhance the quality of the image through iteration. I found it good to break my scene down into multiple
layers of lighting. I let a few key lights do most of the work for my global lighting. I had a layer with medium sized lights
to compliment specific areas, and lights to fake ambience which complimented single shapes.

Large Key Lights

VERTEX
Single Render
148

Medium Lights

Small Detail Lights

VERTEX
Single Render
149

Put Together

Don’t overdo it though. You do not want these layers to disturb each other too much. It is very easy to create light
pollution. I noticed that my scene became a bit of a Christmas tree with all the lights I had added so I scaled them
down a bit.

Creating the Final Image


The following image shows the settings I used to grab a render from the engine.
There are a couple shadow settings used. Shad-
owsAdaptScale needed to be tweaked to 1.1 for this
scene to get rid of the striped shadows. HDRBright-
Offset was changed to clamp the bloom effect.
For the final image I used a few adjustments in Pho-
toshop to get to the end result I was aiming for.

I rescaled the image and sharpened it after which


I applied a Color balance of -20/2/2 to give it more
of a greenish tint. I could have done this in the en-
gine, but I preferred to work with true colors in case
I wanted to take the post processing into another di-
rection. I desaturated the image by 25% and added
a hint of chromatic offsetting to the far left of the
scene. It gave a nice touch of realism, but I was care-
ful as this effect is quickly overdone and the image
gets blurred. Besides adjusting the render itself an
image of lens effects with dirt was added. I set the
mode of this layer to “Screen” at 15% opacity, which
made it noticeable but did not disturb the image.

VERTEX
Single Render
150

In the last step I add an anamorphic effect to the larger light sources. For this I set it to “screen” and scaled the opacity
down again to make it present but not too dominant.

As this article was not much about the actual creation of content, I hope my rant will give you some more ideas of what
you can work with. No matter what you work on, keep trying things out to find all the available options and what can
be learned from it. I really enjoyed building this and the fact that a simple scene could offer me so much practice really
amazes me.
3ds Max

Straight from CryEngine

VERTEX
Single Render
151

The final image.

Battlefield 3 “Aftermath” Environment

About Me
One of my favorite quotes regarding games is from when I played Zelda, A Link
to the Past in the living room. My dad mentioned “Don’t those guys playing the
trumpet ever get tired?” Which was him hinting at the fact that the sound had
been on for a while and the soundtrack had been looping over and over. It was
when Final Fantasy 9 and Legend of the Dragoon came out that it sparked the
question of how video games were created. I had such a great time playing those
games that I had to know more.

I started learning most from image based tutorials since video was not there and
technical talk could be hard to grasp at the time. By trial and error it taught me
patience, English, and a rather in depth view of the software. When the realiza-
tion came that I could do this as a career, Halo has always been there to fuel my
passion and desire to create. It has done so ever since. Over time the Polycount
community has helped me shape who I am and given me many friends. With
their help I am self-taught and ever so motivated to learn more. Combining my
passion for creativity and technical interest I am currently at DICE building envi-
ronments and handling tech from an art perspective. I have had great support to
get where I am and for what I achieved, thank you.
Rense de Boer
w w w. a r t b y r e n s . c o m

VERTEX
152

Richard Gardner www.ichii3d.com


153

Lasfargue Léo www.leolasfargue.com


MATERIAL GUIDELINES
154

MATERIAL GUIDELINES
Shader Management Guidelines By: Ali Mayyasi

Image Copyright © 2001-2012 Epic Games, Inc

CHALLENGE
Materials play a huge role in the visual quality of video games. They define the look of the world, effects, characters,
weapons, vehicles… As material creation tools become more powerful, artists are more empowered to create their
own materials without needing Graphics Programmers or Tech Artists. However, without some guidelines, oversight
and management, materials can become a performance and organization problem.

SCOPE
Materials often need to be handled by multiple departments at varying stages of development:

● Graphics Programmers, Tech Artists and Art Leads typically create the material library.
● Tech Artists and Art Leads usually maintain the material library.
● Graphics Programmers and Tech Artists optimize it.
● Artists hook up textures and fine tune parameters to fit the art direction, lighting and postprocessing
of the game.
● All the different departments often prototype new material functionality, especially Visual Effects
and Game Design.
● Engine Programmers review and modify materials when implementing new engine features.

As such, materials can be handled by more than their authors, at different stages of development,
sometimes months or years after their creation. This is especially true when a project suddenly re-
quires outsource partners. Having materials managed, organized and built in a standardized manner
can really pay off. In my experience, having a small centralized set of managed configurable materi-
als has been much better to deal with than having a large unmanaged decentralized set of custom
materials. Having Tech Art oversee and maintain the material library has been quite valuable. Below
are some of the benefits.

VERTEX
MATERIAL GUIDELINES
155

DEVELOPMENT TIME
In an unmanaged material development environment, materials are created in isolation, without proper visibility to
other team members. Multiple developers then sink nontrivial amounts of time hunting for and failing to find suit-
able materials. They end up recreating material functionality that already exists elsewhere, unknown to them. Simi-
lar functionality gets partially and inconsistently duplicated across multiple materials. This not only wastes valuable
development time, but ends up with redundancies, inefficiencies, inconsistencies and considerable maintenance
overhead. It also perpetuates disorganization.

MAINTENANCE
Materials can and should be built in a parametrized way to allow for instancing, where possible. Most materials
should serve as general templates, with the more specialized versions of those materials instanced hierarchically.
Having a centralized set of templates allows for quick functionality updates: additions to one parent material will
automatically propagate to all material instances, and their referencers. This saves developers from reimplement-
ing the same functionality in multiple materials, reducing human error, and saving time. Changes at the material
template level always come up. Design, Art or Programming may change at any point in production, and you should
be prepared. New engine features may come online late in the project’s lifetime, long after content creation has
started. For example:

● Adding lit particle support to all particle materials


● Adding fade out support to all decal materials
● Updating skin tinting functionality of all playable character materials
● Adding detail normal tiling support to all phong masked materials
● Reworking all terrain materials to leverage a new engine technology

Propagating such changes to all the necessary game content suddenly becomes a huge undertaking
if your materials are scattered and not set up hierarchically.

PERFORMANCE
The fancier the material, the heavier the performance overhead. If material usage is not managed
in a scene, GPU performance can quickly become an issue. It usually falls of Tech Art to investigate
and optimize GPU related performance hot spots. To minimize reactive optimization, it can pay off
to have some measure of preemptive optimization. Here are some performance considerations:
● It is very common for artists to have “corrective” shader math that can be trivially applied to the
source texture for free. For example: Multiply, Power, Clamp... If the instruction count of a shader is
a bottleneck, such math can be stripped out of the shader, and applied to the texture.
● It is very common for artists to have multiple textures, each having a single channel being sam-
pled. If the texture lookup time of a shader is a bottleneck, such channels can be packed into a
single texture, reducing the number of texture lookups.
● GPU efficiency is especially important for particle materials, which often involve a lot of over-
draw. Persistent particles such as fire, smoke, mist, etc... stay on screen longer, and can stack up in
long view lines. Such materials should be optimized more aggressively than nonpersistent particle
materials.
● Depending on your engine, similar materials will result in redundant shaders. Switching between
redundant shaders while rendering incurs unnecessary performance overhead. With Tech Artists
overseeing the material library, they can ensure that most materials are free of performance inef-
ficiencies. They can also educate artists to avoid inefficiencies in the future. If a particularly expen-
sive material is needed for a scene, Tech Art can work with the artists to balance the scene’s mate-
rial usage, keeping it within the overall performance budget.

VERTEX
MATERIAL GUIDELINES
156

QUALITY/STABILITY
Having a core set of managed materials keeps the quality and usage of those materials consistent.
● Parameters: Materials parameters can be used for texture lookups, vector and scalar inputs. Since
these parameters are exposed to developers for tweaking in the material instance, they should be
named consistently for readability across multiple departments. Without any oversight, similar
parameters end up being named inconsistently across different materials. For example, a specular
vector multiplier can be named any of the following: “SpecularColor”, “Tint Spec”, “SpecMultiplier”,
“Color_Shine”… Similarly, inputs should be normalized to behave consistently. For example, a
“PanSpeed” parameter should behave the same in all panning materials.
● Functionality: Occasionally, obscure inhouse material nodes can be created for special functional-
ity. Take dynamic decal fading for example. It is normally better for dynamic “combat” decals to fade
out than pop out. Fading out is normally perceived as higher quality than popping, as it is less jar-
ring. If a developer is not familiar with a special inhouse material setup for fading, and they create a
new dynamic bullet scorch decal, the decal will not fade away during gameplay. This will result in a
hard to find, quality reducing bug. Even if the developer is generally aware of the feature but isn’t
aware of the obscure material node needed for the setup, the material may not get properly cre-
ated.
● Usage: When a material is used by different asset types, different shaders need to be generated by
the engine before the assets can render correctly. For example, a material that is flagged for static
mesh usage will not work on skeletal meshes unless it is explicitly flagged for skeletal mesh usage.
Configuring these usage flags properly can be rather technical. Setting incorrect usage flags not only
results in rendering bugs and runtime warnings, but can also generate unneeded shaders.
● Blendmode/Lighting Model: Nontechnical developers may not be aware of the limitations of
certain material lighting models and blendmodes. For example, if an engine is a deferred renderer,
and a material is flagged to be lit translucent, then it will be forward rendered and inefficient.

AUTOMATION
Having a managed material library allows for enforcing conventions and standards under the hood.
Tech Art can work with the Tools department to establish rules and checks for names, settings, usage
flags and parameters. Tools can also be developed for validating materials with questionable values.
For example: if an environment map multiplier value is below a preestablished minimum, then the
environment map contribution is too little to justify its GPU cost. As a result, the environment map
should be disabled via static switch.

MEMORY
While shader memory hasn’t been a big issue in my experience, it’s still something to be mindful of:
● Having many redundant materials wastes memory.
● Each material created can result in several shaders auto generated by the engine, based on mate-
rial usage, static switches, etc...
● If instead of having one material with one texture parameter, you had N equivalent materials,
each with a hard coded texture, the result will be N times more shaders.
● More shaders mean more shader cache memory; more data to load when levels stream... Every
megabyte counts on the consoles, so you should keep memory overhead as low as possible.

BACKEND
More materials means longer shader compilation times, which means longer build turnaround
times. Specifically, the Xbox 360 takes significantly longer than PC/PS3 because it has a better shader
compiler that produces better shader code.

VERTEX
MATERIAL GUIDELINES
157

PROTOTYPING
I always encourage developers to prototype and create new materials. However, it is always worth
it for Tech Art to do a quick follow up in order to:
● Determine if the materials can be easily consolidated with any existing ones.
● Determine if any optimization is needed.
● Confirm correct usage flags, blend modes, lighting models...
● Verify that the materials leverage parameters where possible.
● Verify that parameter input ranges are normalized.
● Verify that naming is standardized.
● Check for missing functionality, such as fading, tinting...
● Update any documentation.
● Send any memos.
Even during a busy day, it is worth a quick sanity check. It will, at least, start a dialog between Tech
Art and the developer, and will give an opportunity for both parties to understand the full scope
of the addition. It informs Tech Art of the needs of other departments, which is a basis for future
improvements.

CONCLUSION
While managing a centralized material library is hard work, it ultimately facilitates production for
the whole team:
● Well organized and well named materials are self-documenting.
● Developers know where to go, and what to look for.
● Missing functionality is easily identified.
● New functionality is quickly integrated.
● Propagating changes is automatic and risk free.
● Standardization allows for automation and validation.
● GPU performance offenders are proactively triaged.
ADDITIONAL READING
http://udn.epicgames.com/Three/MaterialsAndTexturesHome.html
http://udn.epicgames.com/Three/MaterialsCompendium.html
http://udn.epicgames.com/Three/InstancedMaterials.html

About Me
I’m Ali Mayyasi, and I’m from Lebanon. Growing up with limited access to video
games, I was blown away when I first saw Donkey Kong Country on the SNES. I
knew then that 3D was my calling. I graduated with a Computer Science bach-
elor’s in Beirut, and landed my first job as a Tools Programmer at the Jim Henson
Company in Hollywood. Working closely with the content developers there, I
was increasingly fascinated with 3D, so I signed up at the Vancouver Film School.
There, I experienced the full breadth and depth of the 3D pipeline, and I knew
without a doubt that I wanted to become a technical artist. After graduating, I
was hired by TimeGate as their first Technical Artist, there I stayed, and eventu-
ally became their Lead Tech Artist. It has been a remarkable journey, and I look
forward to the fun problem solving to come. I now am a Technical Artist at
Bungie on Destiny.

Ali Mayyasi
w w w. ps i o n i c p i xe l s . co m

VERTEX
158

Andrew Maximov www.artisaverb.info


159

Andrew Indrikson www.alien-impact.com


FACIAL ANIMATION
160

FACIAL ANIMATION
Marcus Krautwurst
Tips & Tricks For AAA Video games By:

© 2013 UBISOFT All Right Reserved

INTRODUCTION
Facial animation is a crucial field for successful character-driven storytelling and while rigging is just a part of the
machinery it is a fundamental one. In this article I want to share some of the experience I gained within in my profes-
sional career and hope that you can benefit and implement some of those ideas on your own. The content needed for
describing a full facial animation pipeline is enough for a whole book. In this article I will show you an example of how
you can streamline your pipeline and reuse a skeleton for different proportioned faces.

There are a lot of exciting new technical solutions to achieve quality facial animations. But, unlike Hollywood, most
games are still using bones/morphs. This is due to the limitations of current hardware, but also because we have to
produce a lot more content than a 90-min movie, often lip synced in different languages whilst maintaining a consist-
ent level of quality.

The next generation of consoles looks promising, 4D capturing is an interesting tech and will probably get more expo-
sure. However bones will still be the base of it, because they are flexible, cheap and good results can be achieved with
them.

A GOOD START
When designing an efficient pipeline the first steps are obviously based on the projects needs. Make sure you have
the answers to important questions like how many characters you will have, how different they are from each other
or if you need to be able to share animations between those. Quality is also an important factor, of course we want
to achieve the best possible results but depending on your situation this is often held back by budgets, resources and
time frames.

VERTEX
FACIAL ANIMATION
161

This approach is based on a situation with a lot of char-


acters and a lot of dialogue that needs to be shared be-
tween different characters.

It requires the use of the same base topology for every


character. In terms of quality it is absolutely no problem
to have the same topology head for male and female
faces and different races.

The Template Rig

The basic idea is inspired by a talk from Jeremy Ernst on GDC 2012. His solution also supports different topologies
but requires user input to create new face rigs, even if the topology is identical. If you need the flexibility, both ap-
proaches can be used simultaneously. The base of this approach is a rig that will allow you to transform your base
head into all your target head meshes.

Using the same topology for your heads has a lot of advantages, depending on what information you want to store
on the mesh, it will transfer those for free, whether it is skinning, vertex colors or any custom data for later use in the
game.

Since all our heads are using the same topology we can blend-shape the template head to our target heads. As men-
tioned before this action keeps all mesh information intact. The only thing we need to worry about then is to adjust
joint positions to fit the new character. This is where our template rig comes into play.

VERTEX
FACIAL ANIMATION
162

We want to blend our base-mesh to our target head and transform all joints relative to the blend-shape change. In
other words we want to “skin” the joints to the mesh.

There are a few ways for you to do this, in my approach I created a small python script that creates a locator for each
face and aligns it with them. We don’t have to do this on the whole head, it’s enough to do it on the front face shape
because these will only drive our “skinned joints”. Something like shown in the picture below.

Now we need to make sure that each locator follows its assigned face appropriately. The best way I found to do this is
the PointOnPoly constraint in Maya. In 3ds Max this would be the attachment constraint.

Since we don’t want to do this for each face by hand, we just change our python script to do this work for us as well.
Making the PointOnPoly constraint work properly in a script is a bit tricky because you need to provide it with UV co-
ordinates to align to (this way you can constrain it to the surface and not just to a face, vertex or edge. Here is a small
code snippet to achieve this:

VERTEX
FACIAL ANIMATION
163

Once you have finished this step you can test it by changing the model a bit, the locators should all follow the surface
correctly. If this is not the case you most likely assigned the wrong UV coordinates.

The next step is to point-constraint the joints to those locators. We will not use orient constraints, since you want to
keep your existing joint rotations. Here it takes a bit of practice and trial and error to find what works best. The key
here is to use a few locators to average the desired position.

As an example with the eye joints, you want to constraint to the whole “inner eye loop”. This way we get the perfect
average position on where the eyeball joint should be positioned. On the nose-pull joint you need accuracy, so I sug-
gest constraining these to very few locators.

VERTEX
FACIAL ANIMATION
164

But, will it blend?


Once you have found your perfect settings and finished your constraint setup you can put the rig to its ultimate test.
Set up your target head as a blend-shape target and blend the template head to that. Hint: It’s a lot faster with the
locators hidden.

We now have repositioned all our joints to the new face. Instead of manually placing every joint by hand, the model
has done the job on its own. Even asymmetric faces work like a charm, no human interaction needed. Of course this
requires your original bone positions to be perfect.

Now all we need to do is to load the skinning. The good news is, we got it for free because we are still using the same
head as before. We just have to load it based on UVs with Maya’s own tool or the better solution would be per vertex
ID. I strongly suggest having a custom tool in your pipeline for this.

If you head over to my blog (www.marcuskrautwurst.com), I posted an article there a while ago on how to do that in
PyMEL. After you have loaded the skinning just delete all constraints and the bone setup is finished.

VERTEX
FACIAL ANIMATION
165

Code It!
This works perfect, even if the proportions are significantly different. Now that we know how it works, we can script
a tool to do the blending part automagically.

In my case the tool syncs all necessary files from perforce, does the blending and loads the skinning files that are
stored on perforce as well. Keep in mind that you will have to redo the rig as soon as the topology changes.
So make yourself a tool to do that quick and easy as well.

Of course setting up the bones is just one step, depending on your main animation solution, but with this method we
can build a reverse rig that transforms all of our control objects or create a script that creates a control rig based on
the joint positions.

About Me
Servus! My name is Marcus Krautwurst and I’m currently working at
Massive – A Ubisoft studio in Sweden. I am originally from the beautiful
Bavaria in Germany. After a few years of moving from city to city trying
to figure out what I like doing most, I eventually came back to video
games, something I always loved.

I graduated from the Games Academy in Berlin in 2008 and went on


to Crytek in Frankfurt. After 3 years Crysis 2 was finally shipped and I
moved on to new adventures

Marcus Krautwurst
w w w. m a r c u s k r a u t w u r s t . c o m

VERTEX
166

Maxim Revin www.maximrevin.blogspot.com


167

Joshua Brian Smith www.udlokken-art.com


World Machine
168

World Machine Ryan Smith


Creating High Fidelity Terrains By:

INTRODUCTION
World Machine is a node-based, procedural terrain generation tool that creates terrain height maps and textures that
you can use with your terrains in a real time engines such as UDK or Crytek.

The best way to use World Machine, in my opinion, is to make a test terrain, and then set up your texturing network
until you get the best representation of what you’ll want your in-game terrain to look like. Once this is done, you can
go back and work with the various layout generation nodes and flesh out your terrain. I like this way because as I lay
the basic shapes of my terrain out, World Machine will update a preview of the final result with all of your colors be-
ing generated procedurally. This allows you to see a much better representation of what the final terrain will look like.

So how does World Machine work? It’s quite simple, really. You use Generator nodes to lay in basic shapes such as a
circle or spline, then add detail to those with procedural noise generators. Once you have these in place, you can run
the output of these generators into several different Filter nodes that World Machine provides you. You then take the
output of these nodes and plug them into an Output node. Output nodes are what you use to save your height maps
and color maps in whatever file format you need.

The networks you build can get quite complex, so world machine has a set of “Build” buttons that process all of the
nodes and presents it so that you can view what your full resolution terrain will look like. You can find these buttons on
the main tool bar on the far right. They are represented as a green circle for “Build”, a yellow circle for “Build to Current
Device”, and a green circle with a plus in it for a “Tiled Build”. We won’t be working with the Tiled Build button at all for
this tutorial, but we’ll be using the other ones to build our terrain whenever we want to preview it at full resolution. If
we don’t do a full build, world machine will give us a low quality preview of our terrain, which doesn’t always look like
the high res version.

VERTEX
World Machine
169

Interface Crash Course


When you start up world machine you’ll be defaulted to the Device View which shows your node network, a bunch
of tabs that contain all the nodes you’ll be using, and a tool bar on the left that has a preview window where you
can view your terrain in 3D or 2D. You can also view the outputs of any node here. Below that is a device navigation
window that will list all the nodes you are currently using in the device view.

This is great for organization and quick navigation, and it persists through all the different views that you’ll be switch-
ing in and out of as you build your terrain. The shortcut key for this mode is F5 by default. If you want to change the
properties of your terrain, you’ll need to click the “World Extents and Resolution” button, which is represented by
an icon that looks like a mountain being measured. In this window you’ll see properties such as Width and Height of
your terrain, which is defaulted at 8.00km by 8.00km. If you want a larger terrain, set this to something like 16 km by
16 km, which is what I’ve done for the terrain I’ll be making in this article. You’ll also want to change the Resolution
slider to about 1025x1025. If you’re using the demo version, you won’t be able to move the resolution past 512x512.

The Layout View (shortcut: F6) is the interface used when working with Layout Generator nodes. We’ll go over this
view later in the article. The Explorer view is where you can preview your tiled builds in really low resolution. We
aren’t doing tiled builds though, so don’t worry about this view. It’s fun to play around in though. The 3D View (Short-
cut: F8) Is where you can see a high fidelity version of your terrain. If it looks really low res, chances are you haven’t
done a build yet. So go ahead and click the Green Circle “Build” button that I talked about earlier that’s located at the
top right of the main tool bar. After it finishes building, you’ll see your terrain in high detail. Protip: The 3D Viewer
shows the output of whatever node you have selected in your Device Navigation list found at the bottom left hand
side of the UI. If you click the “Lock Preview” button, you can select and edit the properties of the other nodes, while
seeing the 3D View update in real time.

VERTEX
World Machine
170

Building a Terrain
Here’s a very basic example of a world machine terrain network and the terrain it outputs:

Which when built gives you:

VERTEX
World Machine
171

Lets take a look at what’s going on here. I’ve divided the network into 4 major categories. Terrain Creation which deals
primarily with generator nodes, Filters where you use World Machine’s powerful natural filters, such as Erosion and
Snow. The Color section is where we’ll be using selectors and other utility nodes to put together a color map for our
terrain. And finally the Output section, where we can export all the stuff we just created.

I’m going to talk about the different types of nodes that I’ve used in this example, because in my opinion these are
the most important nodes for you to be familiar with in order to create something decent. I can’t go over all of the
nodes because that would be outside the scope of this article, however the nodes I don’t cover will be pretty similar
in functionality and self explanatory once you play around with them a bit.

Generator Nodes
The first node in this sequence is called “Layout Generator”, and it can be found in the Generator Tab while in the
Device View. If you double click the node, it will take you into “Layout View” where you can lay down different shapes.
This is a great way to come up with a rough base for what you want in your terrain.

VERTEX
World Machine
172

In the image above, all I’ve done is draw a line shape using the
“Lines” tool, and turned on “Use Breakup” which is located in
the main properties panel on the left side of the screen. This
adds a bit of irregularity and noise to the final result of the
line.

If you select the line object in the Layout View, you can ad-
just several sliders such as Height, Opacity, and Falloff. There
are also some options to adjust the curve that the generated
height values follow. This is really useful for laying out moun-
tain ranges. The above example yields the height map to the
left.

And this is what it looks like in the 3D Viewer:

It doesn’t look that great right now, but as I keep adding generator nodes that enhance detail, I’ll start to get some-
thing that looks fairly realistic..

Advanced Perlin Generator


The Advanced Perlin Noise Generator, which is found in the Generator tab of the Device view, is a great way to break
up terrain into more natural shapes. I think that it’s most powerful when you use it in conjunction with a mask, so
instead of rolling with the above height map as a base, I’m just going to use it as a mask for the Perlin Noise node.
To do this, I’ll just take the output from the Layout Generator and plug it into the purple colored mask input slot of a
Perlin Noise Generator node. This tells the Perlin Noise node to use the above black and white height output as it’s
mask, which breaks up the original layout generator output into more natural looking shapes.

VERTEX
World Machine
173

The properties of the Perlin Generator gives me great control over several options. I can play with Elevation Center
and Steepness to control the height and intensity of the generator. To change the scale, I use the Feature Scale
slider at the top left.

Voronoi Noise
I now have a decent base for our mountain range in the background, but I’m still left with a large flat area that isn’t
going to look too great if I leave it like that. So I’m going to add in some more noise elements to fill that part of the
terrain out. I’m going to accomplish this by using the Voronoi Noise generator, which can be found alongside the
Advanced Perlin node in the Generator Tab back in the Device View. Previewed by itself, the Voronoi noise will look
something like this:

VERTEX
World Machine
174

The above preview is just the Voronoi noise. To combine it with our previous terrain, I’ll need to use a new type of
node called a “Combiner”.

Combiner Nodes
The Combiner node can be found in the “Combiner” tab in the Device View. It simply takes input A and combines it
with Input B based on a specified combination method.

VERTEX
World Machine
175

In this case, I’m using the Add method to add the Voronoi noise to the Perlin Noise at a strength of 0.26. This gives
us the following terrain base:

Natural Filters
Natural filters are very important in creating realistic terrain, as well as any layer masks that you’ll use for colors.
You can find these in the Natural Tab in the Device View. There are four types of Natural Filters: Erosion, Thermal
Weathering, Snow, and Coastal Erosion. We’re going to be focusing on the Erosion node for this article.

Erosion
The Erosion node takes a height map input and runs a powerful algorithm that simulates how terrain erodes over
long periods of time. With the right settings, you can transform your base terrain into something that looks ex-
tremely realistic and convincing. Furthermore, the node provides several output maps that you can use for masks
when texturing. Here is what my terrain looks like after I’ve applied an Erosion node and tweaked the settings a bit.

VERTEX
World Machine
176

Lets take a look at this node’s properties. In my opinion, the most powerful property of this node is the Geological-
time Enhancement section. This is like pushing the terrain forward in time several million years. You can see in real
time how your terrain features will erode from their tallest mountain peaks to a flat, featureless plain. When using
this node, it’s best to think about what type of planet you’re on. If you’re generating terrain on some sort of alien
world that has no water, you’ll want to turn off Channeled Erosion. Channeled Erosion will cause your terrain to look
like water and other sediment carved channels down the side of the mountains that ends up puddling up in the lower
parts of the terrain. You can tweak other variables like how far the sediment gets carried, how hard the rock is, and
other things that help you fine tune your final result. Once I’m done tweaking these values and am satisfied with my
result, I’m done with the actual modeling of the terrain and can now focus on writing a network that procedurally
colors my terrain based on the different output channels the Erosion filter gives me. Lets take a look at what we have
to work with.

VERTEX
World Machine
177

Generating a Color Map


World Machine provides us with several node outputs as well as filter tools that we can use to procedurally gener-
ate realistic color maps based on height information. The workflow that I like to use for testing out what my final
terrain looks like is to use a special type of Output Node called an “Overlay View”. The overlay view takes two
inputs. One (the top one) is your landscape height map, the other is a mixed input that can take a height map, or a
bitmap that represents your landscape color. When you have everything plugged in and you select it, you’ll be able
to view your terrain with the bitmap overlaid on it.

VERTEX
World Machine
178

Color Generators
At the heart of color map generation is a node simply called a “Color Generator”. You can find the Color Generator
node in the Generator tab under Device View. They are pretty straightforward, all you do is double click them and set
a color. That color gets output as a bitmap that you can combine with other colors via a “Chooser” or “Combiner”
node. The first steps to creating my color map is to bring out a color generator node and select a base terrain color
that I like to refer to as the “Earth” color. Then I grab another color generator and select a “Rock” color. The next
thing I need to do is use a Selector to generate a map that will blend these two colors together.

Selectors
You can find various Selector nodes in the Selector tab in
the Device View. There are 5 different Selector nodes, all of
which take a height field for an input and use it to generate
a new height field that can be used as a mask in a Chooser
node. The five types are Select Slope, Select Height, Select
Angle, Select Convexity, and Select Color.

I’m going to use a Select Slope Node to generate a height


field that I can use as a mask. I do this by inputting the
height field that my Erosion node gave me. After that, I can
double click the node to bring up it’s properties to adjust
what the slope range I want to select will be. I used the fol-
lowing properties:

Choosers
Now that I’ve used Slope Selector to generate a mask for the two colors we chose, I’ll need to use a Chooser node
to put it all together. Choosers are really simple because they only have 3 options: They can choose between input A
and B based on a height map, where higher values of the height map will choose input B. Also, you can do the op-
posite, where higher values of the height field will choose input A. The last option simply adds B to A based on the
height field.

VERTEX
World Machine
179

The Chooser node outputs the following bitmap:

Which when overlaid with our terrain looks like this:

The color of my terrain is starting to come together now, but it still isn’t done yet. There needs to be a lighter color
because as the terrain erodes over thousands of years, pebbles, dirt, and sand get deposited along erosion flow lines
and at the base of mountains and hills. To help attain a natural and interesting look, I’ll blend in a sand color using the
Flow Map and Deposition Map outputs from my Erosion Node to create a mask which I’ll use for my lighter sand color.

VERTEX
World Machine
180

If you look at the network closely, you’ll see that I’m multiplying the mask I created with my erosion node with a Con-
stant node that I renamed as “Sand Density”. I use the Sand Density slider to control the intensity of the sand layer
blending. If I didn’t use this method, I wouldn’t have a way to control the “opacity” of my sand. The only problem
with this method, is that the Constant is measured in terms of “Height” rather than a number from 0 to 1.

VERTEX
World Machine
181

To finish off the terrain, I’m going to use the height map from my Erosion node, and plug it into a Selector called
“Select Convexity”. In the Select Convexity properties, I’m just going to leave the strength at 1.0. What this node
does is highlight all of the convex areas of the terrain based on their angle. So the sharpest edges of my terrain will
have the strongest highlights. I can then take the output from this node, and use a combiner node to add it to our
color map for some extra detail. In the example I’m adding it with a strength of .25. This is a really great way to ac-
centuate the sharp points of your terrain, without doing anything too complex in your network.

Output
So now that I’m done with my color map, how do I export that out of world machine? There are output nodes that
do that for me! I’m going to go to my output tab and grab a Bitmap Output, and a Height Output, and drag those
guys into my network. The Bitmap Output takes a bitmap input, which is the color map that I just generated, and
the Height Output takes a height map input, which I’ve just dragged over from the erosion node output. You can
double click on the nodes to bring up the export options, which are pretty self explanatory. However, just because
I like you, I’m going to mention that if you’re exporting a height output that you’re going to be using as a displace-
ment map, you’re going to want to export it out as a 16 bit height map. You’ll get much more accuracy, and less
banding that way.

VERTEX
World Machine
182

Tweaking
Now that all that setting up is out of the way, this is where the fun starts! I can now go back to the layout generators
and natural filters and tweak properties, and see the final look of my terrain in the preview window without changing
anything on my color map! Try going into the erosion node and changing the geological time slider back and forth,
and watch in wonder how you can see your terrain moving back and forward in time.

VERTEX
World Machine
183

VERTEX
World Machine
184

Like I said at the beginning of this article, once your network is laid out and your color maps are set up to work with
you, editing your base terrain becomes much more fun because you can quickly see what your final terrain output
looks like after a quick build.

At the end of the day, World Machine is a fantastic program that excels at creating high fidelity base landscapes that
can be used either at a distance or as a gameplay terrain. The only issues that you’ll run into is the inability to make
fine tuned custom edits using a terrain brush directly in the program. However, this is solved by just making those
type of edits directly in whatever game engine that you bring it in to. I really hope that you learned something from
this tutorial/demonstration of World Machine!

Conclusion
So lets recap the workflow.
- Start with broad shapes by using Layout Generators.
- Add noise to those broad shapes with Noise Generators
- Further refine terrain by subtracting out areas you want for valleys, rivers, etc using more Layout Generators and
Combiner nodes.
- Erode your base shapes with Natural Filters such as Erosion, Coastal Erosion, and Thermal Weathering Use the vari-
ous output channels from the natural filter nodes in combination with your height map and selector nodes to create
masks for your terrain layers/colors.
- Once your node network is built, go back and fine-tune. Doing this step after generating the procedural color map
will give you a much better glimpse of what the final result will be.
- Output the results using output nodes!

VERTEX
World Machine
185

About Me
My name is Ryan Smith. I’m currently working at Gearbox Software as a Technical Artist. I’ve recently worked on
RAGE, Borderlands 2, and Alien: Colonial Marines. I was born in Youngstown, Ohio, and grew up there until I moved
to Pittsburgh when I was 18 to attend Art Institute of Pittsburgh. Three years later, I earned a bachelor’s degree in
Game Art and Design. Since then I’ve worked at studios such as Digital Extremes and id Software, and of course,
Gearbox.. I’ve also done multiple training videos for 3DMotive.com such as “Advanced Mesh Paint With UDK” and
“Tiling Textures With ZBrush”.
Ever since I can remember I’ve been someone who loves to build things.
Every Christmas and birthday I would always get a new Lego set and spend
hours putting them together, then destroying them, and then rebuilding
them into my own bizarre structures. If I wasn’t building Legos, I was draw-
ing or doing something else just as creative. I started modding for Unreal
Tournament when I was in the 7th grade, and I soon learned that I wanted to
make games professionally when I realized I spent more time making levels
than I did watching TV or playing video games.

Since I’ve started in the industry, I’ve been constantly trying to teach my-
self new techniques and workflows and skill sets. I feel there is much value
in understanding multiple disciplines’ workflows because it helps me un-
derstand all the facets of game development, and enables me to complete
challenging technical tasks. I love being a Technical Artist because every day
presents a new challenge, and each task I work on offers a new learning ex-
perience that helps make me a better developer at the end of the day.

I really hope you’ve had fun exploring what world machine can do. Hope-
fully this information can set you off on making really cool landscapes for
your future projects!

Ryan Smith
www.technical-eden.blogspot.com

VERTEX
186

Bianca Draghici www.biaconcept.com


187

Jan Urschel www.hendrix-design.com


Stylized
188

Stylized Characters
Leslie Van den Broeck
Sculpting Stylized Characters By:

INTRODUCTION
As a kid I was lucky enough to grow up with some of the most amazing 2D animated movies ever conceived. I also got
to experience the birth of 3D animated feature films, So needless to say it was an inspiring experience and partly the
reason why I’m such a sucker for cartoony characters.

As much as I like stylized/cartoony characters I was always wary of them. Why? I associated cartoony with bad/wrong
anatomy and I was afraid it would stunt my growth as an artist by relying on the same old stylized anatomy features
instead of knowing how the body and face really are constructed in real life.

In a way I still feel I was partly right, of course not in terms of all cartoony characters having bad anatomy, there are
enough amazing stylized characters out there that have a very good anatomical buildup. It’s just that copying cartoony
characters from other artists will only get you so far, from the moment you start to combine your knowledge of real life
anatomy and know where all of these stylized features are derived from you’ll be able to create your own distinct style.
It will also become a lot easier to translate existing 2D characters to a 3D sculpt.

VERTEX
Stylized
189

So lesson one would be, do anatomy studies. Every good cartoony character is backed by good fundamental under-
standing of how the real life equivalent works, be it human or animal.

Original images are property of Walt Disney Animation

This brings us to the second point, refer-


ence/research. Have as much reference
as you can, try to know what you’re creat-
ing before you even start sculpting. Have as
many angles of reference so you can deter-
mine shapes better.

Aside from the character’s visual traits you


should also try to determine the personality
of the character. If you’re sculpting an overall
happy character you don’t want to sculpt it
with an angry face. If it’s an existing charac-
ter it will reduce the recognizability towards
the audience since they’re not used to see-
ing it in such an emotion.

VERTEX
Stylized
190

So now we have that out of the way it’s time to start the actual sculpting. I’ll be using different sculpts I have done
before to clarify certain aspects of my working methods. This won’t be a step by step tutorial but rather a general work-
flow overview with some tips, tricks and explanations of why I do a certain thing in a certain way.

Basic Proportions
First of all the most important thing you need to do is get the basic big shapes to look right. Each and every object can
be broken down into big volumes that enclose the shapes.

Original images are property of Creaturebox, Disney, Studio Ghibli


The first thing we need to do is capture these big volumes and make sure they are the right size in relation to each
other. A common mistake beginning artists make is to subdivide and start adding in detail right away. You shouldn’t
do this since a higher amount of polygons means a lot more points you need to manage, as a result you end up with a
mesh full of bumps and dents and that’s the last thing you’d want unless you’re sculpting Danny Trejo of course.

So what you need to do is try to achieve those basic volumes with the least amount of geometry it needs while not
having to stretch polygons either. Now with the addition of dynamesh this process has been simplified a lot. Dynamesh
converts the mesh you are working on in a mesh with the same shape but without stretched polygons, the resolution
of the new mesh can be determined by the resolution slider. You can start out by putting the slider on 8 , get those
basic volumes in there and re-dynamesh once polygons are getting too stretched while retaining the overall volume.

VERTEX
Stylized
191

Personally I start out with 8 and work my way up gradually by doubling the number each time, so if I start with 8 I put
the slider on 16 once I feel I’m reaching the maximum silhouette the resolution of 8 could handle without stretching
polygons or losing volume when I dynamesh. Once I reach the maximum of that 16 resolution I double it to 32 and
so on.

I generally start with a sphere and use the move brush to manipulate the shape; if the concept you’re trying to recre-
ate has a cylindrical shape it’s more logical to start from a cylinder. Just start of with the basic shape that’s most suited
for the model you want to make.

If the character has attributes that are separate


pieces I also try to keep them separate as sub-
tools. You can easily append new basic shapes
by pressing the append button or you can ex-
tract them by masking of shapes and pressing
the extract button in the subtool palette. The
benefit of this is also that you can dynamesh
these pieces without it affecting your other
subtools.

Make sure you check the silhouette of your


sculpt while capturing these big volumes. You
can use the Flat material combined with a black
RGB color to check your silhouette without the
distraction of the shapes within.

VERTEX
Stylized
192

In the example image with the SCI-FI armor you can see it’s easy to add in simple shapes and manipulate them towards
your design. The new insert brushes make it even quicker to add details without having to append and merge subtools.
If you want really clean hard surface shapes you can retopologize either in ZBrush or another 3D software like 3D coat.
As far as ZBrush has come in terms of hard surface sculpting it’s sometimes easier to put some clean sub-D topology
over a block out mesh without having to spend hours on polishing the surface into the clean surface you want.

VERTEX
Stylized
193

Brushes
Now that you have the basic volumes nailed down it’s time to start looking at how they interconnect. Before I go into
the actual sculpting, I’ll first make a small list of the brushes I use and for what purpose I use them.

Clay
This brush I use as my standard sculpting brush. It’s able to add subtle transitions between forms
without leaving too much of a distinct alpha shape behind on your sculpt like the Clay tubes does.

Clay Tubes
This brush is great for blocking in shapes and working rough. It keeps you from trying to go into
detail too early.

Move
This brush is obviously for moving shapes around. I use this mostly for bigger proportion changes.

Snakehook
This brush is also great to move things around with but has a certain elasticity to it that can give
some good results. Its also great to extract things like horns and other extrusions.

Magnify
This brush I use to bulge up things, it’s a nice way to add extra volume to parts. You can also use
inflate as an alternative to this brush.

Pinch
This brush I use the least of all but sometimes there’s a need to pinch creases tighter together and
this brush is very useful for that.

Orb Cracks
This is a custom brush I use made by Michael Vicente, it’s an alternative to the dam standard
brush. I use this one since it doesn’t pinch geometry and gives a nice sharp edge when I carve. If I
do want things smoother all I need to do is smooth it out where I want to.
Download it Here:
http://orbart.free.fr/Orb_Cracks.ZBP

VERTEX
Stylized
194

HighPolish
This brush is great for flattening surfaces and defining planes on your sculpt, it can both be used
in the block out stage of sculpting and for finishing a sculpt.

Smooth
This brush I use to smooth out shapes; there are two smoothing algorithms you can use, the best
one being the least known. You can smooth with less pinching by holding the shift key, start brush-
ing and then releasing the shift key while you’re sculpting.

LazyMouse
This can be applied to all brushes and is quite handy to achieve nice long
flowing lines. The way to find out what brush works best for you is by experi-
menting with them and not just in the conventional way other artists use
it. Sometimes a brush can be good for a different thing than it was initially
made for. An example of that would be the Orb Cracks brush was created
for sculpting cracks on environment pieces but I ended up using it as my
carving and cloth brush on all of my sculptures, I even sometimes use it to
add volume to shapes like the tear ducts on eyes. Having brushes that serve
multiple purposes saves you time and keeps things easy for you.

Customize
There are a lot of tools hidden in a lot of different places inside
ZBrush. You could start assigning hot keys for everything but another
useful thing to do is to make a separate panel with all of the features
you use and organizing it in a way that makes sense to you.
It saves you time looking for buttons and that is always a good thing
when you want to get work done.

The way to do it is by going to the preferences menu, hitting the


Enable Customize button and then pressing the Create New Menu
button in the Custom UI Tab. Give this menu a name, dock it to the
side and start dragging custom pallets and function buttons in it by
holding ALT and click dragging them into your tool bar.

VERTEX
Stylized
195

Form
Here’s where the real sculpting comes into play! There’s no cheating in this part only observing and applying your
own knowledge of anatomy. This is what makes or breaks your sculpt just like bad perspective would make a drawing
look funky.

The process to sculpting form is by first marking the key


reference-points (e.g. mouth, nose, eye-sockets) on the
basic volumes block out and matching the rest of the fea-
tures according to those. Again, first sculpt the volumes
and then start on the details. Think about what lies be-
neath the part you’re sculpting and apply that knowledge.

First I use the Orb Cracks brush to mark these areas; this
can be just a simple line to indicate their position. It doesn’t
need to be perfect since you’re constantly evaluating your
sculpt and you can always adjust things later on but it’s a
good idea to get it as close as possible from the beginning.

Masking off shapes like the eye sockets and then pulling
them inwards with the move brush helps to keep shapes
hard around the edges.

If you already have that hardness in the beginning stages of


the sculpt it might be less sculpting work in the end if the
stylization requires it for the final sculpt.

By using the High Polish brush you can already start defin-
ing the facial planes that are most noticeable in the con-
cept. These most likely correspond with the traditional fa-
cial planes.

VERTEX
Stylized
196

For good reference on planar breakdowns of anatomical features look up the books of Andrew Loomis and George B.
Bridgman.

Even though you’re trying to keep the structural buildup realistic don’t forget to exaggerate it. You want to find that
balance between the two to hit the sweet spot. It will take some trial and error to get an eye for this but once you get it
right you’ll notice. Also don’t be afraid to use the new see-through function of ZBrush if you’re having trouble matching
the silhouette and structure by eye. One thing you can do is put your reference sheet behind your ZBrush working file
and put the see-through slider to somewhere around 20%. Now match the rotation and scale to that of the reference
and pull the shapes to match those of the reference. I wouldn’t recommend doing this all the time though, training
your eye to see silhouettes and shapes will help you a great deal and makes you faster.

VERTEX
Stylized
197

The main thing to do is look at your sculpt from all angles, all the time. Using orthographic views only will give a wrong
impression of your sculpt so it’s key to rotate around your sculpt while working on it. Once you have all the basic fa-
cial planes defined you can start to add more mass to the areas that need it. You can do this either by using the Clay
brush or by using magnify to bulge up the forms. Watch out with using magnify though, if you use it too much you
might end up with a sculpt that looks like a collection of balloons pasted together instead of natural shapes flowing
into each other (example at the bottom of the page).

Apart from shapes flowing into each other there’s also a thing called overlap, this is another aspect that will give
believability to your sculpt. Everything in the real world has to obey to the law of gravity, so does form. So naturally
once you have bigger lumps of form near each other they will start to interact and one form will start to overlap the
other one.

Clear examples are fat bellies and real breasts, they will hang over the forms that are below them unless they are
pumped up with air or silicone. But it can be found in more subtle things like wrinkles of older people or with extreme
facial expressions like you often have with cartoony exaggerations.

So instead of just carving in a line to suggest wrinkles formed by smiling, what you can do is mask of the lower form
then bulge up and overlap the higher one. You can also use the inflate modifier on the entire mesh or masked areas
to get some extra volume and overlap without any effort but watch out not to overdo it because you can lose your
hard surfaces easily this way.

VERTEX
Stylized
198

Hair and Fur


Hair and fur in 3D can either be done the sculpted way or by using things like fibermesh. I prefer sculpting it because
it’s easier, faster to get the overall look right and to makes it match the rest of the sculpt. Like anything 3D what you
need to do first is get the overall volume blocked out. On this block out you suggest the flow of how you want the hair
to move. This is an important step since it can either make your sculpt look more dynamic or just dull.

For detailing the hair I generally use the same shape language , namely an S shapes furpiece. This is more of a personal
preference/style but it works for me. I carve these details in using the Orb Cracks brush with lazy mouse enabled on it
and bulge up the individual thick strands with the magnify brush.

Colors
Once you’re pleased with the result of the sculpt it’s time to polypaint. Most of the cartoony character sculpts I have
done so far where fairly easy to paint. First of all you need the right materials to start polypainting on, both the skin-
shade4 material or the Basic material with an increased ambient are good candidates. A polypaint material should not
have a colored matcap, it should just be white. That way the colors you polypaint on the material are the exact same
ones you’ve color-picked.

VERTEX
Stylized
199

The brush I use for polypainting is the Standard brush with zadd disabled and RGB on. By shifting the RGB intensity
you manage the amount of color you add.

The first thing you do is add a basecolor to all of


your subtools, you can determine these colors by
looking at the 2D concept. Apply color to the en-
tire object by going to the color menu and press-
ing the Fill Object button.

You can also use the RGB intensity in this stage.


Let’s say you picked a basecolor that’s too light
and you want to darken it but don’t know exactly
by what amount, you can pick a darker version of
that color, put the RGB intensity slider to a low
amount and then press the Fill Object button X
amount of times until the color on your subtool is
to your liking.

Since the colors in 2D don’t always work in 3D


you need to make sure that the entire sculpt with
basecolors still looks visually appealing. When
that’s done I first start adding reds to the skin
tones of the sculpt, there are a few areas that can
use this to add a fleshy feel to the skin. Cheeks,
lips, nose tip and back of the ears are the areas
that are most affected by this.

So pick a color that’s slightly a bit darker and a bit


less saturated than a 100% RGB red, put the RGB
intensity to a low value and brush those areas
until you get the fleshy look you want the sculpt
to have. This again is something that depends on
your personal preference.

Gradients
To increase readability on your sculpt it’s a good idea to brush in gradients to guide the viewers eye in the direction
you want it to go. Usually the bottom of your subtool will be a darker color than the top. For this darker color you
don’t just pick a darker tone of your subtools basecolor but you also need to shift the hue to make the gradient more
pleasing to the eye.

VERTEX
Stylized
200

You can also add some painted ambient occlusion with these darkened colors to areas you want to be darker all the
time regardless of the lighting conditions like the inside of the mouth , nose cavities and ear cavities.
Apart from these steps there isn’t much to polypainting
unless you want to start adding in textures and color vari-
ations but that totally depends on the style you’re trying
to recreate.

To paint the iris of the eyes there’s a nice little trick you
can use to get some nice results.

If you already have a set of eyes what you can do is disable


symmetry and mask off one. Enable Solo mode so it only
shows that subtool and enable Local Symmetry . Now en-
able Z symmetry, Press on the (R) Radial button and up the
Radial count.

Now you can easily paint a round iris and pupil. Try to cre-
ate a gradient in the iris so it has and dark / light/ dark
transition . Once you have this disable the symmetry, mask
of the bottom half of the eyeball , re-enable symmetry and
add some darker tones in the top part of the iris.

Once you’re done you can disable the Radial and Local
symmetry , put the symmetry back to X, unhide the other
eyeball and use the mirror and weld function on the X-Axis
found in the geometry tab of tools to copy over the eyeball
to the other side with the polypainting.

Rendering
With the rendering you can go as far as you want but I like to apply the KISS principle since most of my cartoony
sculpts so far have been 3-4 hour tribute sculpts that needed to be presentable in a short amount of time. I’ll explain
the few steps I do to render my sculpts.

VERTEX
Stylized
201

To fill objects with materials you can put the mode to M instead of RGB and use the Fill Object function just like you
did for the color but this time it will fill the object with the material without affecting color. For the eyes the ToyPlastic
material is a good candidate since it has a tight specular highlight to it that resembles the glossiness of eyes. For eve-
rything else you can use the Basic Material and up the ambient to your liking. I also like to enable the Wax modifier
on this in the material setting to get a slightly faked SSS going. Not too much or it will make your sculpt look too soft
but if you keep it at 20/30 amount of strength it won’t do this. For the lighting I only use 1 light. The position of this
light is either left or right upper corner depending on what side of the sculpt is facing the camera. You want the part
facing the camera to catch more light. Go into the Render menu and in the BPR shadow tab and play with the shadow
settings. I like to lower the GStrength to somewhere around 0.6 so the shadows aren’t too dark when I render. You
can always make it darker later on while compositing. Upping the ray will increase the rendering quality but will also
increase your render time. Hit the BPR button to render the final result and save away the passes that are shown in
the BPR Render pass tab in the Render menu.

Compositing
Now that you have separate passes you can import these into Photoshop, Use the mask to apply a nice smooth mask
on the passes and put the depth pass above your shaded view in overlay mode. You’ll see it lightens up the front and
gets darker towards the back, it increases the readability some more but you can tone it down to your own prefer-
ence. You can also put the shadow pass above that one and put the layer mode on multiply and tone that down to
your liking. It might also help to use colorbalance on that pass to color your ambient some more.

This is my entire process boiled down to these key points , I hope it was informative and I can’t wait to see the stylized
sculpts you guys come up with.

VERTEX
Stylized
202

VERTEX
Stylized
203

Conclusion
Once you’ve done all of this you’ll have a nice presentable image of your model. These were my steps to creating a
stylized character sculpt, this process works for me but of course there’s a lot of other techniques out there to experi-
ment with to achieve results to your personal taste. Thanks for reading and have fun!

About Me
My name is Leslie Van den Broeck , I’m from Belgium. I’m a character artist
with 2 years of game industry experience. I’ve been interested in everything
that involves the creation of games from early on, both technical and artis-
tic, and I have been influenced by a lot of artistic styles over the years.

Meeting other artists and seeing their work drives me to better myself and
I hope to continue doing so for the many years to come. My goal is to be-
come the best artist I can be and to work on a lot of awesome games with
awesome people.

Leslie Van den Broeck


w w w. l e s l i e v d b . c o m

VERTEX
204

Jieanu Dragos www.jieanu.com


205

Olivier Cannone www.rahan.cghub.com


Mech Texturing
206

Mech TexturingAlan Van Ryzin


Texturing Tips and Tricks By:

Color Block-in
I use this part for prototyping color schemes and designs. This is
super important before starting on the rest of the texture since if
I get too far and decide I hate the color choices, it would be a pain
later to change if it’s too big of a change. I try to experiment a lot
in this stage with color ideas and block outs.

I usually start by doing selections from 3ds Max or Maya on mesh


parts where I want separate colors. I then bring those selections
into Photoshop and do a color fill to fill in those areas. This stage
is pretty important since I usually try to make sure the colors are
working before starting on any wear/dirt/detail. It’s super im-
portant to block out your colors before doing anything else. It’s
a pretty simple process, and quickly allows me to see where I’m
at color wise.

I highly recommend doing this for anyone texturing, it makes


things much easier down the road. In this case I blocked out the
subtle pale greens, tans, some of the decals, where I want all the
dark greyish blue values for wires, pipes, etc. I also worked in
some subtle camo and discoloring to areas just for extra variation.

VERTEX
Mech Texturing
207

Separating
After I get my colors blocked out and mostly in an area where I like them, I move onto the other parts of metal work,
dirt wear and etc. I break this process down quite a bit to speed things up. I try to think of this type of metal texturing
as a simple breakdown of wear, dirt, and color variation. If you think of any metal surface it has some dirt, some signs
of wear being it rust, paint chipping, scrapes or scratches, and then it has variations of color either caused by the prior,
or even environmental lighting which I try to bake a little of just for extra interest.

Base Textures
I first lay down a couple base textures. These are usually very gray and midtone-ish maps I source from photos, these
help with the smaller details so I can focus on the parts that matter. Picking good source textures for base maps is
mostly about finding interesting shapes, but also not picking a source that’s too contrasty as you want subtle stuff
and not a lot of crazy contrast. I use CGTextures a lot, and they have a pretty kickass library of base metals and base
textures. Below is a pretty nice one, it has some detail that needs to be removed but you can see the subtle shapes
that are pretty nice.

I usually will do a color range selection on something like this, or even just use it straight up and do some noise reduc-
tions on it. The key the base textures is very low noise and low contrast. I mostly use overlay blend mode for these
and they sit just above my base color layers but below all the other stuff.

VERTEX
Mech Texturing
208

Wear and Tear


I think of this as anything that is essentially damaging the material. I try to think of what the material is that I’m trying
to sell visually and observe in real life how it damages, i.e. painted metal chipping, bare steel oxidizing, rusting, etc.
The key I find to doing good edge wear is about doing as little as possible but doing it in the right places. We are trying
to communicate that it’s worn, not actually wear it out. To communicate that I put it in areas that are most commonly
worn and areas that I feel tell a story about where it’s been or how it’s used. Thinking in this way really helps me break
the process down and not overdo it.

I create this through a combination of photo sourcing and hand painting. I hand paint what I can’t photo-source or what
I can hand paint quick enough. Photos are good for some stuff, painting is better for others, in the end I want a styl-
ized real, meaning it has the benefits of photo with the style and beauty of painted. Too much of either for this genre
and the look and feel would be bad for this. While this model didn’t have a ton of wear, you can see it subtly mixed in.

VERTEX
Mech Texturing
209

I usually create the wear pass by using a very fine brush with a middle gray or white (sometimes a dark value depend-
ing on the base colors) with a combination of shape and color dynamics that are mapped to pen pressure on my Cin-
tiq. In doing this, while I’m painting the edge wear I can vary the shape and size of the paint chips or scratches on the
fly which speeds up my process quite a bit.

VERTEX
Mech Texturing
210

I try for an overall mix of scratches, paint chips, and edge wear to give the look of being worn out. For this model, there
wasn’t a ton of edge wear but enough to imply that some surfaces are freshly worn. I try to keep the wear to the most
commonly worn out areas such as edges of shapes and corners. It’s best to study reference for where to place it.

I start by painting all the local edge wear that I can’t photo source first, then going back and adding some use of pho-
tos for the extra realism. I do this by using select color range a lot when working with photos. This allows me to grab
pieces of photos and use them pretty quickly. I then erase what I don’t need. Again this model I chose not to have a lot
of wear, and focus more on the dirt and grunge.

VERTEX
Mech Texturing
211

VERTEX
Mech Texturing
212

Dirt/Grunge/Drips/Weathering
This is similar breakdown to wear, although I try to think of all the places dirt accumulates. I also think about where I
can put it to tell the viewer it’s dirty. Sometimes dirt accumulates in areas in real life you wouldn’t think to have. I try
to push this so the viewer sees it as dirty, it’s more mind’s eye dirty. This is also a combination of painted and photo.

Some dirt is just a pain to hand paint and takes a long time, so why not use real life to your advantage? I try to find the
most interesting shapes, artistic looking, and visually appealing dirt in photos. Then I hand paint the rest. Again, it’s the
benefits of photo and benefits of painted combined. Simple brushwork and layering works well here.

I start with a watercolor type brush in this scenario, also using shape dynamics and color dynamics with a warm value
mixed with a dark value in my color swatch for the color dynamics. I slowly build it up with multiple passes, this allows
me to (based on pen pressure) create soft dusting or dark muddy type dirt. It’s a careful mixture between the two
when painting to get the right effect. You want some dried dirt, and some wet dirt to create the look. Placement is very
important here. Areas like the legs get more dirt since they are in more contact with the ground.

VERTEX
Mech Texturing
213

I start with a similar brush to the wear brush, but it’s more about the placement than brushwork. I go in and hand
paint all the crevices and fill them with a nice warm value, slowly building this up ending up with nice imperfect
shapes that look natural. Next, I’ll go in and photo source some dirt to add realism and an extra even of natural look.
It’s a careful balance of photo and hand painted. Certain things like drips or other weird shapes can be time consum-
ing to paint so I try to use photos to my advantage.

VERTEX
Mech Texturing
214

Rethinking Final Color Theories


Once I do a base pass of wear, dirt etc, I rethink the coloring to try to make sure they are reading well and design
wise are the colors I want. I try to compliment shapes with color, and areas where I want the viewer to look more I
emphasize. Things that are touched by human interaction are sometimes important to express more. Things like door
handles or doors since it’s where a human might interact with the object. Since this isn’t a car, it’s not obvious where
to accentuate sections like that, so I chose to bring out the details that people are used to seeing such as wires, springs,
etc. These kinds of things the viewer can relate to since they are used to seeing them around them in real life. This is
important since it gives the viewer a sense of the object being understandable and digestible.

I go back and adjust my varying color layers saturation, brightness and hue to get the right look. In this case I wanted
some subtle blue in the black values, and I desaturated the red tones a bit.

The color work on these mechs is a bit of a design process within itself. I try to combine what I feel looks good with
the concept reference, but also just what looks appealing. Some colors just look ugly together, so even though we are
making something beat up and dirty, I still try to keep it appealing with coloring. Another big part of color is how shapes
read from a distance. This this is a mech game, a lot of times you are seeing them far away so I wanted the larger shapes
to be obvious.

Detail/Photo-work
This is where I go in and add the stuff I chose not to hand paint or manually model in the high poly stage. I do this on
purpose for flexibility. This way I can work on the detail while texturing and experiment a lot. Some of these concepts
are not fully fleshed out, and so I like to leave some of the texture detail up in the air to decide later.

When I’m photo sourcing for detail, I usually pull small parts from all over the place, things like aircraft, military heli-
copters, etc. work well for this subject matter. I also will pull from random sources; just anything I feel makes sense
mechanically but also looks cool. I experiment a lot, allowing myself to make happy accidents.

I try to be sloppy, it may sound stupid, but I do it on purpose so I can allow myself to make mistakes because a lot of
times the best ideas I’ve found are from the randomness of placing detail and seeing how it looks. I try to think of this
as a bit of a design process within itself.

VERTEX
Mech Texturing
215

In the end, the diffuse on this stuff is pretty important, and it’s all about combining wear, dirt, detail, and a mix of all
of this from both photo and hand painted. Again I wanted stylized real here, so not too painterly and not too realistic
photo generic.

VERTEX
Mech Texturing
216

Specular
Specular for this was followed from reality but mostly a stylized approach. I wanted it to look interesting and not neces-
sarily photo real. In real life, painted metals don’t reflect much so I pushed it a bit to give it some extra detail and inter-
est. I start by duplicating my diffuse layer group or PSD depending on how it’s setup, and going back in and adjusting
values for all the work I did earlier.

For things like dirt, mud, etc. I will usually darken, while with edge wear I’ll try to bring out more to give it a nice dynam-
ic look. It’s also important to add extra detail dirt etc. that’s not in the diffuse so that the texture looks dynamic enough
in motion. Things in real life have a lot of information that is only seen in specular, so the idea is to replicate that here.
I also usually accentuate my cavity map to bring out some of the nice detail.

I also try to accentuate areas that would realistically have a good amount of specular, so plastic stuff or shiny metals,
etc. When I’m all done I bring all of this into UDK since Hawken runs on Unreal Engine 3. Although in this case I ended
up going back and adjusting my diffuse and specular to make it look good in engine. I also take a lot of the detail that I
added in my diffuse and place it in my normal layer group and run a height to normal conversion to combine it with my
baked normal map. In the end I try to capture the concept, but also to expand on the concept. I make sure the color
is working; the specular isn’t too bright, etc. This is pretty important since sometimes the post in game can wash stuff
out too much, or even over darken things with too much ssao, so I try to tweak as much as I can.

VERTEX
Mech Texturing
217

VERTEX
Mech Texturing
218

I usually put all this in a test map or make a custom map with some lights to do some final shots of it, I try not to rely
too much on lighting to make it look good. I want the textures to do their jobs. The baked normal map combined with
the 2D one helps sell the surface details when light hits them, since I didn’t model that stuff into the high poly, this is
important.

VERTEX
Mech Texturing
219

Sometimes I’ll place the model in a test map that comes with udk just to see it in some post FX setups and see how the
color is working and how the spec is working in a variety of environments. The idea here is to kind of average all the
looks so that it looks good no matter where it is and the specular isn’t getting too hot or the colors aren’t too dark. It’s
a good idea to test this stuff. I also look at the model in UDK with just diffuse only to get an idea as to where it stands
value wise, this one was on the dark side but it ended up working out in the Hawken build.

VERTEX
Mech Texturing
220

VERTEX
Mech Texturing
221

Conclusion
In summary, it’s all a careful balance, and the main thing I try to remember for my own workflow is experiment like
crazy. I do that because I look at experimentation as the R&D of texturing. I also try to break down what I’m trying to
achieve with textures and how I can better communicate it to the viewer. I think of what people are used to seeing
and how I can closely show them the story I’m trying to tell them through the use of color, all without being too loud
in the texture style in order to allow them to digest it visually and observe the subtleties.

I hope this has helped bring some insight into my process. There is so much to show when it comes to this stuff, but
these are some of the highlights.

I’m constantly learning myself and perfecting things. Always keep iterating and don’t be afraid to try weird approaches
for stuff, you never know what might work well. In the end I find you can’t really invent anything without making a
bunch of mistakes along the way.

About Me
My name is Alan Van Ryzin. I’ve been in the game industry for about 9 years,
I got started as a kid working on mods for BF1942. I’m a self-taught artist and
what started out as a hobby for me turned into a job. I worked painlessly on
mods creating content trying to get better and eventually someone noticed
me.

I worked at a couple studios on mobile games and eventually FPS titles. I


learned a lot in the process about this industry and with that knowledge I
decided to pursue freelance because it allowed me to work on many things
at once and keep myself artistically stimulated.

I now have freelance but also started a company which I co-own called Art
Bully Productions. I hope to continue making art that people enjoy, but it’s
more about learning and getting better for me. I love CG art because it’s the
marriage of art and technology, both of which I love.

Alan Van Ryzin


w w w . p o l y g o o . c o m

VERTEX
222

Marco Di Lucca www.evilmaul.cghub.com


223

Luces www.luces.cghub.com
Cloth Fundamentals
224

Cloth Fundamentals
Emil Mujanovic
Tips and Tricks By:

I remember when I first started creating characters in 3D, how hard it was to get believable and natural looking cloth
folds. This was a few years before sculpting and normal maps became common use so it all had to be hand painted or
photo sourced. Texture sizes were relatively small so you only had a handful of pixels to play with and I found it difficult
to find relevant resources to help me understand cloth folds.

So I turned to the game-art community , places like Polycount, and I found myself just looking at other artists to see
how they were achieving their results and trying to emulate their style and techniques. However, I was only able to
learn their workflows for creating the end results, but it didn’t bring me any closer to understanding cloth folds.

Once I had a better grip on the tools and workflows, I found myself heavily relying on photo reference when trying to
create natural folds. This only got me so far as I was just copying the reference and still no understanding of why it was
behaving the way it would flow.

In the past year I’ve just been obsessed with cloth folds and wanting to finally master it once and for all. I’m still a long
way from being a master, but I’m starting to see repeating patterns, structure, flow, and began to look for consistencies
in amongst different materials. My focus was to understand how different cloth behaves, how it bends, how it warps,
how it folds, how it creases and the best way I found to study this was by 3D scanning. It will give you a full three di-
mensional view of your subject without any lighting or colour interference.

Hopefully in this article, I’ll be able to share some of these simple observations I have made in the past that have helped
me understand cloth a whole lot more. Also, to provide you with access to a simple entry level 3D scanner that is ex-
tremely affordable and some general tips for converting the raw scan data to a final, polished, production ready sculpt
in ZBrush.

Fundamentals
I’ll start things off by focusing on some basic core fundamentals for cloth. Most are relatively simple and common
sense, but are generally overlooked. Some are guidelines you can follow to help you block in your forms and get a more
natural and believable flow.
TENSION AND COMPRESSION
A Tension point is a point where a cloth fold will originate from. It usually comes from an area where the cloth is being
held up by something. A great example would be holding up a bed sheet, your fingers would be the tension point.
Compression is where the cloth has enough weight and looseness to it that it sags and begins to fold in on itself.

VERTEX
Cloth Fundamentals
225

CLOTH THICKNESS
This will help determine if the cloth folds will be broad or tight, sharp or soft, if there is much weight to it or not and
whether there will be much creasing (memory folds) that remain in the cloth when it’s stretched out.

CLOTH FIT
Tighter folds will generally have more of a horizontal type flow where loose folds will have more of a vertical flow. So
for tighter cloth, the stretching doesn’t allow the weight of the cloth to sag very much, so it will run in a sideways flow
instead of downwards if it was more loose and flowing.

VERTEX
Cloth Fundamentals
226

ZIG ZAG / DIAMOND FLOW


The more you look at how cloth behaves and flows, the more you’ll notice the zig zagging pattern emerge. It’s far more
obvious on cloth with a lot of compression and when it’s in a cylindrical form, such as trouser legs or long arm sleeves.

The zig zag flow will move in a downward direction and generally stem from a point of tension in the cloth. As it moves
down the cloth and begins to intersect with other folds, it will create a diamond shape. The diamonds can vary in size
and can get quite flat as well in areas of high compression to the point where they no longer resemble a diamond
shape.

The zig-zag folds can also have deep and shallow folds depending on the fit of the cloth. Like in the example of the two
T-shirts above, the white one on the right has really shallow folds, while the darker shirt on the left has deep folds.

CREASES / MEMORY FOLDS


Creases or memory folds are details left behind when cloth has been folded consistently in the same position numer-
ous times. It can also be created by folding the cloth and applying some weight or pressure onto it while it is folded, so
when it is unfolded the crease remains.

VERTEX
Cloth Fundamentals
227

They commonly occur in areas of severe compression, such as behind the knees and the inner side of an elbow joint,
because of the force applied to the cloth when these joints bend. It also occurs on the back area from having the cloth
fold when you’re seated and the weight of your back against a surface wrinkles your clothing.

Adding these small details will give your sculpt that extra level of realism and also some visual interest to a potentially
flat surface.

3D SCANNING - ENTRY LEVEL 3D SENSOR


3D scanning seems to be becoming a common occurrence within the games industry these days with a lot of studios
relying on the technology for in-game production as well as for pre-rendered cinematics.

There are quite a lot of mixed feelings among 3D artists regarding 3D scanning and its place within our industry. You
have your purists who really dislike using 3D scans and prefer sticking to hand sculpted methods, then you have the
other side of the coin where artists really embrace the technology and utilise it as best as they can within their work-
flow.

VERTEX
Cloth Fundamentals
228

As a character artist myself, I think I fall somewhere in the middle, where if I don’t need to use them in production, I
won’t, because I’d like to feel confident in my own abilities. However, there are quite a lot of benefits:

Educational purposes
Great reference material
Gaining the muscle memory from refining the folds from the scan base during clean up
Free block out mesh that will help with saving time from the early stages of sculpting
Realistic folds for free.
Time saving

I have explored a variety of 3D scanning methods, both high and low end and have had great and terrible results with
both. One of the very first methods I tried was using a Microsoft Kinect for XBOX 360, which is one of the cheaper solu-
tions. I’ll give you a basic run down of the process of how I would use a 3D scan made with a Microsoft Kinect and get
it to a state where it’s production ready.

WHAT YOU WILL NEED


- Microsoft Kinect (either for XBOX 360 or for Windows - The Kinect for Windows sensor is slightly better and allows you
to get closer to your scanning subject) or equivalent

- Scanning software: ReconstructMe (the software I’ve personally used the most), Kinect Fusion SDK, Artec Studio, etc
- Zbrush 4R6
SCANNING YOUR SUBJECT
I’m not going to go into too much detail about the scanning process, because there are quite a lot of tutorials, instruc-
tions, etc, that come with the software you choose to use. Instead here are a few notes you should consider when you
do your own scanning.

Scan time: 10 – 60 seconds (depending on the complexity of your subject)


Build time: The geometry is captured and saved in real-time, so it should be good to use immediately (outputs to
common file types: OBJ, FBX, etc)
Textures: Some software will also export colour information via vertex colour, which can be beneficial for base
texture maps. If this important for you, check with the software capabilities first.

Detail: Some software will claim that they can do some high detail, but from what I’ve found is the high detail
stuff is only possible if you use a small scan area (50cm x 50cm x 50cm). Also it doesn’t seem to pickup
details smaller than 2 – 3mm. So using a Kinect for facial scanning is actually quite horrible.

Live model vs Mannequin


Live model
- The person you’re scanning will always have subtle movement from breathing, light swaying and/or
other factors and this will always result in more clean up.
- Cheaper and easier to have access to.
- Accurate human forms and easier access to different body types.
- Can get any pose from the subject you’re scanning.
Mannequin
- No movement with the mannequin so you’ll have a much cleaner scan (less movement jitters).
- Requires a mannequin (either homemade or professionally made) so there is an additional cost.
- Limited body types and poses.

Looking at the raw scan data you can see that there are quite a lot of artifacts, surface noise, holes in the mesh and
generally a lot of unwanted detail. This is fine because there are still quite a lot of things in the scan that I can use. Pri-
marily the main forms and bulk, the underlying anatomy, cloth folds flow and some minor micro detail.

VERTEX
Cloth Fundamentals
229

In the past I would have had to make a base mesh to project this scan data onto so that way I can have a cleaner file to
work with. One without any holes and cleaner topology. However, in recent times ZBrush has some really sweet tools
that allow artists to do most of their work within ZBrush and without having to go back and forth with a 3D modelling
package.

In this instance I’ll be using Dynamesh to do a lot of my geometry patching, re-topo and clean up. It’s incredibly simple
to use and very effective for a variety of sculpting needs outside of basic clean-up and re-topo.

DYNAMESH AND SCULPT PREPARATION


In this case, I used Dynamesh because I
needed to plug some of the holes in the
geometry where the scan data failed to
capture anything. The trick is finding the
right Resolution value so that way you
don’t lose the detail you have and also so
it’s not too high to where it will be difficult
to smooth out all the surface noise and ar-
tifacts, which will leave you with a blobby
mesh.

The only default setting I changed for this


instance was the Resolution value. I set it
to 512, but it probably could have been a
little lower. I found it was a good balance
because it gave me the right density for
a base sub-division level and was able to
project all the details without any notice-
able difference.

Following Steps 1 - 3 will generate a new


mesh with cleaner topology, no more
holes in the geometry and we are ready to
start the clean-up phase.

VERTEX
Cloth Fundamentals
230

CLEAN-UP
This next process is the clean-up stage. Here we’ll clean the sculpt by smoothing out all the unwanted surface noise,
jitters and errors in the scan data as well as any unwanted scan data such as additional clothing, badly captured straps
and buckles, etc. You’ll have to be careful not to remove and/or smooth out the smaller forms because they will be
great guides during the second pass and polish stages of the sculpt. Just be sure not to disable Dynamesh during this
clean-up process, since we will need to re-run it a few times (refer to step 4 in the image above).

First we’ll focus on the unwanted scan data. In this instance, it’s the bottom of the shirt, the phone in the pocket and
the shoes. This is where Dynamesh really shines because I’m able to re-topologise my mesh on the fly.
I use the Clay Build-Up brush predominantly during this phase. I’ll do my best to flatten/unify the shirt with the jeans
so that the geometry overlaps each other, then run Dynamesh to re-topo to clean the geometry and then gradually
move around the mesh until it’s all smooth and clean.

Next, I moved onto removing all the surface noise,


movement jitters. This is one of the more crucial
steps in the entire process, because I had to pre-
serve as much of the fold details as possible while
smoothing out all junk in the scan.

The two brushes I used most in this process are the


Smooth brush (sculpt while holding down SHIFT on
the keyboard) and the Clay Build-Up brush. There
will be times where I will use the Damien Standard
(Dam_Standard) brush, but that will be to define
some of the weaker forms before smoothing that
area.

It will help preserve some of those details that


would otherwise be lost, such as the micro folds
and pinches in the cloth, as well as stitch lines,
pockets and overlapping cloth.

VERTEX
Cloth Fundamentals
231

After I had gone through the entire model and smoothed out most of the surface noise, reinforced some folds and
plugged any holes, there was one part that was left before I could start sculpting and refining my sculpt. That is the
waist area of the jeans where the shirt used to be. This was fairly simple to clean, but took a little bit of time to shape
it just right without using any underlying base body model for reference. Essentially all I did was use the Move brush
to get the shape and Damien Standard brush to refine some extra shapes for better scale reference.

VERTEX
Cloth Fundamentals
232

REFINEMENT
Now onto the fun stuff! This part in the process didn’t take me very long since I had a clean base to work from and all
I had to do was refine the edges and bring back the details in the areas that were missing.

I started out by defining the edges of the main folds/creases, such as the legs and the knees. The technique I used was
tracing along the contours of the folds using the Damien Standard brush which defined the peaks of the folds a lot
more. It’s fine to be a little overzealous with your brush strokes, because you’ll need to go over them again with the
Smooth brush to soften them back up again ever so slightly.

VERTEX
Cloth Fundamentals
233

VERTEX
Cloth Fundamentals
234

Once I got to a position where I was mostly happy with the larger forms, I would move to the smaller forms, such as
the creases/memory folds as well as defining the stitch lines and pockets. This is the first time that I felt that I needed
to go up in a sub-division level because the smaller details were looking too jagged.

In my workflow I find it important to never go up in sub-division levels too early. I will do whatever I can in the current
sub-division level until I feel like I can’t squeeze any more detail from it. This will allow you to focus on the whole model
and get it evenly detailed without getting too caught up in one particular area. It will give you less blobby results and
you’ll spend more time focusing on the larger forms and have a stronger silhouette because of it.

And the major clean up and refinement is done, which leaves only the final polish and adding little details like the but-
ton for the jeans, small rivets at the edges of the pockets and the belt loops that sit around the waist line. As a personal
taste, I would create all the pockets as separate sub-tools and project them. This will give the pockets cleaner lines and
you have more control by changing their shape and size without having to re-sculpt the areas you want to change.

TOTAL TIME SPENT


Scanning: 1 minute
Scan prep: 5 minutes
Clean-up: 30 – 60 minutes
Refinement: 5 hours

Total: Approximately 6 hours

VERTEX
Cloth Fundamentals
235

About Me
I’m a Character Artist at Massive Entertainment – A Ubisoft Studio currently
working on Tom Clancy’s The Division and I have been in the video game
industry since 2006 and have worked at studios in Australia, Singapore and
Sweden.

I have always had an interest in video games at an early age, mostly playing
them rather than developing them. But once I discovered that I could mod
my favourite games with my own maps, skins and models, I was hooked.

I started out with making my own deathmatch maps for Duke Nukem 3D so I
could play with my friends at school as well as some custom sprites for Grand
Theft Auto. I stumbled onto Polycount while looking for Hammer Editor tuto-
rials to make my own maps for Half-Life/Counter-Strike and was introduced
to a world of 3D art and game development and it all moved on from there.

I got my first break in August of 2006 at an independent game development


studio in Melbourne, Australia called Big Ant Studios where I was hired as a
Junior Environment Artist for Spyro The Dragon: The Eternal Night.

Since that time I’ve been involved in 6 projects ranging from budget titles to
AAA projects, I was also an Editor and Administrator at Polycount and helped
with community competitions and challenges such as Team Fortress 2 Poly-
count Pack Contest, BRAWL and many others.

Emil Mujanovic
w w w. a r t b y e m i l . c o m

VERTEX
236

Stefan Morrell www.stefan-morrell.com


237

Tyson Murphy www.gardenturtle.blogspot.com


Outsourcing
238

Outsourcing
Outsourcing Tips & Tricks By: Peter Kojesta
Running an outsource studio has its good times, and it’s difficult times. The one constant is passion for the work. The
fact is you can’t survive without passion; we don’t clock in and clock out. The trouble comes from trying to find a nice
balance between life and work, since this industry can more than consume you if you let it. This article relates to a few
lessons learned while operating Exis, an outsource studio established in 2003 that generally works on AAA titles; but
the lessons contained herein are good for all freelance artists.

It’s important to remember that this is a business. Publishers and developers, regardless of their love for the art, are
faced with that fact all the time. If your intention is to be a freelancer, you too must be aware of the business aspects
of game development. Some considerations:

Workflow
Your work as a freelancer is 60% art, and 40% administration. How you deliver files, when you deliver files, how you
invoice clients, deal with customer needs, and ensure security are all things to consider. Developing a written ‘standard
operating procedure- SOP’, or a team/company bible, is a great way to spell out your work ethos. This document will
serve as your ‘go to’ on how things must be done, and can also serve as a checklist for delivering quality to your cli-
ents. It’s important to be concise, as this document will provide the standardization you need to become a reliable art
developer for your clients. You can even share this SOP with clients so they understand you’re serious about the other
40% beyond asset/art creation.

Charging Clients
This is a question I hear all the time. What should I charge a client for my work? The reason the question keeps coming
up is because there isn’t a simple answer. Clients are as varied as the projects they develop, as are artists. The most
important thing to consider is what you’re able to work for and use this as a basis. Keep in mind that you should never
work for the bare minimum you need to “get by”; this only screws you. Companies who hire outsourcers are sav-
ing money on a large variety of things related to hiring an employee: health benefits, buying you a computer, paying
the electric bill associated with your machine, furniture, heating a building, buying hardware and software, providing
snacks, hiring HR, and all of the other infrastructure that is needed to maintain an employee (do you have any idea
what it costs to heat 50,000 sq.ft?). So given this knowledge, understand that your value is beyond simply your survival
rate. If your skill and quality is beyond the norm, feel free to charge for that. That said, don’t leave money on the table
for pride. Keep in mind that the freelance business can be feast or famine, so sometimes a lower paying contract with
higher work volume/longevity can really be a benefit.

Payment
It’s also important to remember that many clients won’t pay you right away. Many larger companies require at least
a NET30 pay schedule. Which means they pay you 30 days after the invoice date; and you generally invoice when the
model is accepted, not complete (though this is loose). When confronted with a company you’ve never heard of, nor
have reason to believe is 100% reliable, you may ask for a % up-front, and the remainder on delivery of the assets.
Once you establish a rapport with the company, and they prove they are as reliable in payment as you are with asset
delivery, you can establish new payment guidelines if you so choose. First and foremost, don’t EVER work without a
written contract.

Communication
This is the number one most critical thing you need to be aware of. The fact that you’re good enough to be an art free-
lancer is a given (if not, go practice); But your ability to communicate with your clients is paramount. Communication
is a two way street, so you need to make sure to engage your client about their needs, about their source materials,
and about their expectations. If a schedule or deliverable is unrealistic, you need to communicate that to your client
without making them feel dumb or disrespected.

VERTEX
Outsourcing
239

Matt Hawkins from Top Cow comics (an awesome leader) gave me one amazing piece of advice that I’ll pass along to
you now. As obvious as it may seem, if you embarrass someone, they won’t do business with you. That said, you can
expect some clients to treat you like the help; and you’re going to have to decide if you’re alright with that. Aside
from this, you need to make sure your client knows what’s going on with the work at all times. If you think you’re go-
ing to be late on delivery, you need to let the client know immediately so they can plan for it, or around it. If you ever
wait until the last second to tell a client, you’re not only an idiot, but chances are you will lose the faith that client has
placed in your ability to deliver. If your client has an outsource manager, this person will be your primary contact, but
often some places will designate a producer or a line artist to guide your development or deliver. Make sure to keep
this person informed.

Common Pitfalls
It’s okay to say no to a contract if you don’t think it’s up your ally. Do so respectfully, and if you have a contact who
can perform the contract, direct the client to them. When the client does have a need that fits your skill set, they will
think of you for it. Lastly, reputation is king. If you have a reputation for delivering quality work on time, you will be
able to trade on your good name for future work. If you make sure to communicate well with your clients, even some
missed deadlines are forgivable.

Art tests can and should be done for some clients, and others use it as an unscrupulous way to garner assets. Under-
stand that the latter is VERY rare, and it should really be obvious to you what category a potential client falls into. That
said, your portfolio is often enough of a calling card to warrant hiring you, and those artists that don’t use their own
work are often exposed soon enough.

Late payments. Some clients may pay you late, some may drag you around for quite a while. Nearly every client will
wait until the last few days on a NET30 invoice to pay you. Understanding what money you’re owed and following up
with clients is your job alone; do it poorly and you won’t have a job for long. It can seem like a full-time thing to get
paid sometimes, but this comes with the territory, and you should expect it.

Conclusion
Hopefully these few hints will give you a better understanding of the freelance market. If you make a name for your-
self by delivering quality work, make sure to charge reasonable prices for yourself and for clients, you can have a nice
career and work on some great projects.

About Me
I started my career in 1997 as a contract artist on a tiny little game called
Cthulu Rising. I continued to teach myself 3D art as I progressed and finally
graduated from college in 2003 with a degree in computer science. Upon
graduating I was hired at Breakaway games, where I stayed for the next two
years. I worked as a contract artists on the side; and in 2005 I went to work
on Exis full-time. Since then I’ve had the pleasure to lead our team on pro-
jects like Xcom, Bioshock infinite, Fear 3, and Civ 5.

I’ve worked with companies such as Firaxis, Irrational, Lucas Arts, Game loft,
and Warner Brothers on various games across all known platforms, and also
defense contractors such as Northrop Grumman and General Dynamics on
serious simulations. In 2012 my company Exis released its second game, Ma-
jestic-12 for the PC (a 3 year labor of love). We’re working on new things,
and still delivering top quality art and code assets to our clients! I’ve enjoyed
every minute of this game dev thing these last 16 years, and I can’t see my-
self doing anything else.

Peter Kojesta
w w w. e x i s i n t e ra c t i v e . c o m

VERTEX
240

eat3d.com
241

eat3d.com
HARD ON
242

Hard On Modular Hard Surface Design By: Elijah McNeal

Hi! I’m going to give you some know-how about Modular Hard Surface Designs. I prefer to think of these things as Le-
gos. At the end of the day they kind of are, at least for me that is. Modular assets are objects that can be used through-
out an environment, or at some points are literally a part of an environment, multiple times. Think of a hallway with
lots of cool stuff in it. Take that stuff and break them into particular groups of like/unlike objects that can be added to
another hallway or a room later. Now we’ve got some basic modular assets. In the case of these assets, the hallways
themselves are modular assets. At cursory glance, some of these things can seems pretty boring. Wires here, broken
glass bottles there. At the end of the day these things give our setting it’s character.

That’s not to say that materials aren’t important, they are. They can make or break and environment too, but we want
to push the grey enough to where a naked grey shaded hallway looks pretty damn cool. Before I even begin designing
the environment; I think about my materials. Often these include metal because of a personal preference. That prefer-
ence is derived from my own desire to create Sci-fi settings. If it were a more historical setting; Things such as wood
and stone would be much more dominant. Since I’ve decided what I want to make and what it will be made out of I
can move on to what this is for. For this demo I’m going with the industrial deck of a space craft. This means I will want
things such as pipes, older computers, wires, cables, knobs, switches, vents, etc.

Three Layer Attack

VERTEX
HARD ON
243

Ground, wall, ceiling. This is where it all starts. How interesting can a wall be? Plenty interesting. That interest is de-
pendent upon it’s design purpose; Who or what is it for and what is it made out of? I don’t want to get too crazy, but I
do want to lay out the essence of what is occurring with the geometry. When I say “essence” I’m referring to what the
shapes are doing in terms of their language. Morphing shapes, or 2D clay as I think of it, is the name of the game here.

Internal to External Design elements like insets, lights, ropes, wires, cables, pipes, small vents, etc. Now we’re getting
to things both inside and outside of the base design’s structure. These elements are typically the lower level stuff that
is scattered throughout sections of the scene to give certain areas a unique quality.

Environment related elements like A/C units, computers, girders, rails, machinery, phones, etc. This is where the en-
vironment really claims it’s identity from others. Not only do the large shapes vary, but their details and alignment do
as well. While I have shapes that move up and down, the dominant guide is horizontal because these are designed
for hallways to guide the player.

VERTEX
HARD ON
244

VERTEX
HARD ON
245

As we go deeper into the vessel, we begin to see more signs of wear and tear. Duct tape is being utilized to keep wires
into place along the floor. The tubing is getting less fancy and worse from wear. Hydraulics and pneumatic handles
adorn the large mechanism and older phase technology lines the corridor walls. Computer consoles that resemble
heavy duty construction machinery panels hang from the ceiling and monitor systems pressure. The pipes are getting
larger, moving greater amounts of material that may be dispersed or collected. And the shape language is becoming
more simple, but with a great abundance to give our viewer a sense of primitive technology.

VERTEX
HARD ON
246

VERTEX
HARD ON
247

Now for something...a little different. Here is a good exercise to execute that goes across spectrum. Shape design,
material design, and structural design. The wonderful thing about this is that you can use the same shape, with the
same purpose, and give it varying levels of coolness...and they’re all modular. Each of these things is a crate. Our first
set is made with traditional wooden crate material, but with different shapes that facilitate different uses. Some lay
down, some stand up. Even though a crate is a sort of box, different shaped boxes are intended for different object
storage. Are we storing guns and bombs, or just apples and oranges? For these I was thinking about things such as
various foods, including small livestock.

The second column consists of modern materials that are mostly found at construction zones, military shipping areas,
and industrial warehouses. They are likely for grenades, guns, and tools or sorts. This last set is the more imaginative
of the bunch. Huge crates that are mechanically integrated into the bulkheads and floors can quickly get attention
over the standard. Notice though that the shapes haven’t changed and their overall purpose is the same. They hold
stuff. How they hold it will be more interesting, and the animations for these would surely be cool, but at the end of
the day they just hold stuff. What do they hold? I’m not quite sure. I’m under the illusion they hold futuristic goods
across the spectrum; food, weapons, tools...jetpacks.

VERTEX
HARD ON
248

I hope you’ve enjoyed a quick look at my process for creating modular hard surface disigns. Taking some time to plan
out how your various forms work together can really pay off in the end!
Here I’ve brought some recent work I was allowed to release for Star Citizen. Following more along the lines of the
short walkthrough, these are corridor tiles created for the Bengal Carrier vessel.

VERTEX
HARD ON
249

About Me
Elijah started drawing at a young age. As a kid he loved drawing cartoon charac-
ters, cars, buildings. For hours he would draw anything he could get his eyes on
that interested him. His first taste of drawing in a professional manner was tattoo
design for sailors, marines, and even foreign studios while serving in the US Navy
is Japan.

As time grew on, Elijah realized he had to engage his childhood dream of drawing
machines and buildings. Elijah McNeal is a recent graduate from Art Institute of
Dallas, majoring in 3D Animation and Modeling.

Elijah has worked for Picture Plane Imaging, where he did work for franchises
such as Skylanders Giants, Transformers, and Ben Ten, Austin Dermagraphix,
and the highly anticipated Star Citizen game from Cloud Imperium Games.

Elijah McNeal
www.elijah.cghub.com

VERTEX
250

Mikael Lugnegard www.lugnegarddesign.com


251

Andrzej Sykut www.azazel.cghub.com


ZBRUSH TRICKS
252

ZBrush Tricks
Designing and Concepting Mech & Tech Characters By: Furio Tedeschi

I will show a basic approach and thought process of how I would go about designing and concepting mech/tech char-
acters in ZBrush for video games, 3D prints or film work. I will start by going over some new methods and techniques
I have been using with ZBrush for doing fairly quick concepts. I like to start my concept in ZBrush mostly using Dy-
namesh. I find using 3D concepts allows the director or client to see the concept from multiple angles at a rough stage.
Photoshop is used to add final touches, quick VFX, lighting and fine tuning to get the images ready for presentation.

Using 3D to create your concepts can be a longer process in the beginning but will be faster and more versatile later on
during the project. Further assisting the project, the base meshes from the 3D concepts can assist previs teams with
character block outs, and ZBrush sculpts can assist the 3D modelers for reference to create the final product both for
video games or film. Having said this nothing beats the quick suggestive lines of 2D concept so it’s always good to play
with these methods as well. I will often do some really loose sketches before jumping into any 3D application.

BLOCK OUT
I start with a Dynamesh sphere and build up the parts and rough forms using the low resolution Dynamesh. I’ll use clay
tubes and trim brushes to block out shapes I like and complement each other. This stage is a very iterative process and
I focus on getting the character’s volumes and constantly check the silhouette to maintain forms and shapes I’m after.

VERTEX
ZBRUSH TRICKS
253

2D CONCEPT
From this stage I will take a screen grab into Photoshop and do a really quick paint over, no longer than 20 mins. Just
loose strokes to suggest ideas I want to recall – my memory sucks and this helps. Keep the 2D concept loose, don’t
get stuck in the details and it’s okay if it looks bad as these are only meant for your own viewing. In this mech’s case I
wanted to allow him to use tank and heavy ammunition in combat. The mech has interchangeable hands to interlock
into tank barrels and other heavy artillery weapons. The mech’s structure is built to resist high impact fire recoils.
These ideas end up dictating and assisting how the mech looks by adding visual landmarks.

I also wanted it to be a highly manoeuvrable unit so I try to get these rough ideas into the concept. Also take a look
at some modern day robotic joints if that’s the vibe you are going for and they are usually pretty straight forward
mechanics. Don’t copy just borrow where you need and just try to get an understanding of how certain joints need
to move – again keep it simple.

REFINING BLOCK OUT


I Jump back into ZBrush and start blocking in some of the forms from the concept and any major landmarks I want in
the sculpt. Again keep it loose and don’t get precious with your design. If something looks good but doesn’t fit in with
the rest of the design, don’t fight it just change it and if unsure make a save. Remember 3D is very versatile don’t let
silly hiccups slow you down. This also helps me prevent myself from spinning round the model for hours pointlessly
like a tool - I often fall into this trap.

VERTEX
ZBRUSH TRICKS
254

Refining certain areas and using the standard insert brushes to block in joints and add volume. The TrimDynamyic,
Hpolish, DamStandard, Standard and Claytubes brushes are used for the more organic structures. So as you start defin-
ing shapes you like, start increasing resolutions on Dynamesh and refining parts further.

DETAIL PASS
When adding detail make sure it is nicely balanced with some flat areas without detail. I think of traditional art theory
and how you would like to find a nice balance of negative and positive shapes in a composition. I try think of the areas
where the detail and flat spaces would be on the sculpt. Generally I tend to add detail closer to joints and manoeuvra-
ble areas, leaving areas that would remain static as larger flat areas. Design is a really iterative and personal process,
getting a good knowledge of military, space, sports and even RC cars/chopper designs will give you a good reservoir of
material to pull from when going about constructing these kinds of things.
There are methods and formulas to make things more pleasing to the eye and balance stuff out but in the end it comes
down to what you like and dislike. The mech construction is still a work in progress and I would still do another pass to
all the areas to make everything nice and clean or you could use this as a base and retopo further refining in another
app, it just depends on the purpose of the model. In this case it’s just a personal piece for me and keen to see how far
I can push the surfaces in ZBrush. Follow me on http://smokeflames.blogspot.com/ or http://blaze.cghub.com to see
the further progression of the mech.

VERTEX
ZBRUSH TRICKS
255

Photoshop Effects

VERTEX
ZBRUSH TRICKS
256

DYNAMESH TRICKS
Here I will go over some really basic tips that are available
elsewhere on the web but that I have found invaluable as
well as some blatantly obvious tips. I hope you find some-
thing useful.

ReDynamesh: Alt drag anywhere on the open doc-


ument – not on the model this will only make a mask. As
mentioned pretty obvious.

Polygroups: Checking the Group button will allow


you to keep any polygroups separate and combining sepa-
rate meshes as polygroups will keep your meshes more
organized. I will usually have this on while working, very
helpful when needing to edit or move any polygroups
around.
This will help you keep things more organized and make it easier for you to work on secluded parts of your subtools.
Masking is also very useful in this case as you can mask out certain areas of your subtool to avoid sculpting over those
areas.

Insert Brushes: A very powerful feature is the ability to clip off any part of your mesh and turn it into an insert
brush or by using the standard insert brushes supplied with ZBrush. Some of the navigation is a bit backwards but once
you get comfortable it will be like 2nd nature. By holding ALT while inserting an insert brush you will cutout/boolean
from the dynamesh. Also holding down shift while using Move transform will constrain your move Axis making it easier
to keep things centered across your polygroups.

Dynamesh: Is very dependent on the scale of the subtool. If you are finding your meshes are too dense at low
resolutions try lowering the scale. You are also able to take your dynamesh to 2048 resolution in the new ZBrush 4 r2
as opposed to the 1024 res of previous update.

VERTEX
ZBRUSH TRICKS
257

Start at a low resolution and build up your dynamesh reso-


lutions just like you would have worked in ZBrush previously
with the standard Subdivide Mesh method.
Polypaint: Will transfer across when using Dynamesh,
again dependent on resolution and matcaps will be reset.

Project: Project in the dynamesh menu will try keep as


much of your detail as possible but will take a beefier pc to
handle the detail projection and calculations will be slower.
I would suggest using this at later stages in your work when
most shapes/volumes have been worked out.
Subtools: To separate polygroups into separate subtools the easiest way I find is to use the Split functions in the
Subtool menu. You can separate polygroups either by splitting the hidden parts or all. Using the split hidden gives you
control over what you want to separate.

Some older works and approaches, AC00 and Plugs sculpt was really a test a couple years back, the process used on
this was a mixture of stencils and flat brush which was previously used in ZBrush to its predecessors Trim, Hpolish
brushes and so on.

VERTEX
ZBRUSH TRICKS
258

The T8000 head was a second try using the same techniques with stencils and Flat brushes
My approach has changed slightly due to some of the new features in ZBrush but most of the same methods apply
when doing a concept for a character. The design for Amod went through some variations but I had a pretty good
idea in mind for the character. It’s still very useful to do a really quick 2D concept to block out the idea on paper as it
does make some of the designing easier down the line. I like to treat nothing like it’s set in stone and try to never get
attached with any area of my design. As long as you save regularly and incrementally, by adding more you will always
have something to go back to if you do not like what you have.

AMOD

VERTEX
ZBRUSH TRICKS
259

So from the 2D sketch phase I would move onto the modeling. The Amod mesh parts started in 3ds Max. I try to
just get the major forms in as they can easily be edited and reshaped in ZBrush. So 3ds Max is used for blocking in
shapes and to start to get an idea of size and form as opposed to the new dynamesh option. Images below show
some early block outs from Max

In ZBrush I started to work on the mesh to achieve the desired forms and shapes, clay tubes was used to add quick
stokes to indicate denser detail areas versus larger flat panel areas and some refining has started as well. I tend to
work on different areas of the model first, if I like the direction a certain area is taking form I tend to run with it and
land up refining some areas before others. This can sometimes be a benefit as it helps set a standard for the detail
pass on the rest of the model. The more refined parts end up becoming the bench mark for the rest of the model.

VERTEX
ZBRUSH TRICKS
260

Keep the main subtools in visible as much as possible if your pc can handle it, this will help in keeping the detail bal-
anced throughout the model by constantly having visual reference. The rest was mostly just polishing up. The more
time you spend the better it will look but I was running really late for the deadline and a lot of areas where rushed – I
would like to do a second pass on Amod or version 2.

VERTEX
ZBRUSH TRICKS
261

Conclusion
There are various ways of cleaning up the sculpts either by continued refining in ZBrush using trim and clipping
brushes or by reconstructing or retopo of your mesh in another app. This really depends on what your needs are for
the work you are doing. Again when designing mechs, or any character for that matter, it can be a very iterative pro-
cess which will revolve around your likes and dislikes. Initially you might suck a bit but with practice and patience you
will find your own style and workflow. I would say practice makes up 90% of any talent. Some might pick things up
quicker but the more you do anything the better you will get at it. I want to thank Ryan Hawkins for offering me the
opportunity to contribute to vertex mag, the best mag around imo. I have learned a lot from artists that shared their
workflows and techniques through the years and hope this was informative or useful.

About Me
My name is Furio Tedeschi and I currently reside in South Africa. With over
10 years in the industry, My work has been a mixed bag. Ranging from TV
Adverts to Video games, Military Weapon Simulations and Motion pictures.
I have worked as a Digital Sculptor/character artist and Concept Artist for
Clients such as – Gameloft, Lucas Arts, Microsoft Studio 343, Guillermo del
Toro(Pacific Rim), Paul Anderson (Resident Evil Retribution)and Krome Stu-
dios.

Furio Tedeschi
http://smokeflames.blogspot.com

VERTEX
262

Jae Cheol Park www.paperblue.net


263

Marcel Haladej www.vsha.cghub.com


COMPRESSION
264

CompressionChris Cockburn Tips & Tricks By:

1024Diffuse_2048Normal_close 2048Diffuse_1024Normal_close 2048Diffuse_2048Normal_close


With demand for high fidelity in graphics, texture budgets have become very tight. Not only have texture sizes dou-
bled, increasing the memory footprint by about four times, additional textures beyond the standard diffuse, like nor-
mal maps, have added to the problem. The amount of video memory available has grown but hasn’t kept pace with the
memory requirements of all the desired textures.

In a perfect world, carefully authored textures produced by a team’s artist would fit perfectly into memory without any
fuss, unfortunately this is rarely the case, and this is where compression comes in. There are basically two types of
compression, lossless and lossy. Both behave pretty much as they sound, lossless compression means that given the
compressed output, you are able to recreate the original exactly, while lossy compression means that you are unable to
reproduce the original input exactly from the compressed data. An example of lossless compression for images is run
length encoding for tga’s, conversely, and example of lossy compression is the S3TC algorithm better known as DXT1
through DXT5. Why would we use a lossy compression over a lossless one? Typically a lossy compression has a higher
compression ratio then a lossless one, that is it’s much better at making the size smaller. Ideally what we want for the
best results is a lossless compression scheme, after all if we’ve spent a lot of time authoring a texture we’d like to see it
appear exactly the same when it’s used. For normal maps there is a very easy way to achieve this, that involves adding
a few simple math instructions to our shader. In a texture the red, green, blue values represent the x,y,z of the normal
inside tangent space. Imagine tangent space as a coordinate system with the x and y axis running along the surface of
the polygon and the z as the “up” from the polygon surface.
To calculate the length of a vector is very easy, length = the square root of ( X*X + Y*Y + Z*Z). Using some simple high
school algebra when can rearrange this as Z = the square root of ( 1 - X*X - Y*Y ). From this we can see that we don’t
need to include the blue channel in our normal map as we can reconstruct its value from the other two just fine in the
shader. This makes the shader slightly more expensive instruction wise, but in practice this expense can be ignored as
modern GPU’s can process far larger numbers of math instruction than texture sampling.

Congratulations, you’ve just saved one third of your total memory footprint for normal maps with this simple change,
or the extra channel can be used for something else like a specular map.

One final trick that is easy to achieve and falls between using and not using compression. With the event of shaders
becoming common place, a lot of the detail and appearance of the polygon surface comes from its interaction with
the light sources in the scene. This means the normal map is going to have a larger effect on the final lit pixel then the
diffuse texture. Because of this, if we have to reduce texture sizes because of memory constraints try dropping down
the resolution of the diffuse map instead of the normal map. You may be surprised at how little fidelity you lose. Of
course this works better on things that have don’t have too much detail in the diffuse maps like background props and
environments.

VERTEX
COMPRESSION
265

If the above trick doesn’t drop you below your texture budget or doesn’t give acceptable results, then its time for lossy
compression. Typically this means using the DXT file format. Unfortunately for us these formats while pretty good for
diffuse textures, introduce unwanted blocky artifacts in normal maps. This is because the algorithm is optimised for
a color texture and not for something that represents a direction in space, after the texture has been compressed the
normals are no longer normalized, that is they no longer have a length.

Fortunately there is a format for compressing normals. 3Dc otherwise known as FourCC or DXN. It’s an open standard
that was originally implemented by ATI but is now supported by both NVidia and ATI. It builds on the DXT5 algorithm
taking into account the fact that the data you wish to compress may not just be color data. If the 16 bit version of the
compression is used it still achieves the 4:1 compression ratio of the DXT1-5 formats but produces less block artifacts
in your normal map.

One last final tip for improving the appearance of compressed normal maps in game is a bit more involved as it in-
volves changing the tool pipeline slightly. When a texture is loaded in game, most of the time mip maps of the texture
are generated automatically from the loaded texture. The problem with this should be clear straight away, if the
loaded texture has been compressed with a lossy algorithm, the artifacts will be included in all lower levels of the mip
map. To avoid this a better solution is to generate all the mip levels from the original uncompressed source texture.
At runtime the texture plus its mip levels can be loaded instead of automatically generating them. This gives a small
but noticeable improvement to the appearance of the normals in game.

Conclusion
Today’s video cards and shader languages give the artists a wide range of options to create anything that springs to
mind. Unfortunately the limitations of the same hardware can have a large effect on the visual quality. Understanding
those limitations and learning to work around them will help improve the final result. Thanks for listening and I hope
this casts a little light on what happens between creating the texture and seeing it in game.

About Me
My name is Chris Cockburn, I’m currently living Sweden working at
Massive as a gameplay programmer on The Division.

I’m originally from a small town in Far North Queensland Australia


that nobody has heard of and as a result I’m a self taught program-
mer. The demo I was working on with some great help from my art-
ist friends Jon-Troy and Steph landed me my first job in the game in-
dustry in 2004 with a start up studio called U235. Since then I have
worked at Fuzzyeyes (Edge of Twilight) and Team Bondi (LA Noire).
Although in recent years I’ve tended towards gameplay program-
ming, my entry into the industry was as a graphic programmer and
I’ve had the pleasure to work closely with many talented artists.
While my skill in art is limited to drawing stick figures, I’ve helped
the artists on the technical side to achieve the look they were after.

To me, working as a programmer in the games industry is the best


job in the world. There are new challenges almost every week, from
figuring out how to code a game mechanic a designer has dreamed
up or the balancing act between keeping a character responsive to
input while still having smooth realistic movement from the anima-
tions. There is always something new to learn.

Chris Cockburn
w w w.enginecoding.net

VERTEX
266

Efgeni Bischoff www.bischoffart.com


267

Jesse Sandifer www.chickwalker.com


TEXTURING
268

TEXTURING
Using ZBrush for stylized textures by: Fanny Vergne

Most people consider next gen texturing and hand painted texturing to be two radically different processes. I have to
admit I started using ZBrush with the intent to make next gen assets, but my favorite textures have definitely been
the stylized ones, so I tried to combine my two favorite processes to create a new one. I decided to use ZBrush as the
foundation for a method to create stylized textures while maintaining the hand painted feel.

I didn’t see a lot of tutorials or articles about ZBrush sculpting for environmental textures and even less on using the
program to produce stylized textures. I would like to use this article to share the process I developed while working
on World of Warcraft . I will go through all the steps required to create a stylized, tileable texture along with some tips
and tricks. This article assumes some familiarity with ZBrush and is aimed at people who already know a little bit about
the program.

Preparation in 3ds Max


When making a tileable texture I always use a 3D software package to prepare my tile before importing it into ZBrush
and sculpting. I use 3ds Max to ensure it will tile correctly and it is not too repetitive. If I were to do this directly in
ZBrush it might be hard to see if the tile looks good. I build some very simple box primitives without worrying about
topology as I plan to dynamesh it later in ZBrush. The goal here is to create a perfect wireframe that will be easy to
sculpt on.

VERTEX
TEXTURING
269

One very important thing to do at this point is to keep things similarly spaced. For example, if I decide to make one
slab bigger than the others, I will put another slab of the same size at about the same distance away. This helps to
ensure that the tile doesn’t appear to repeat as much.
When everything seems good to
me, I export my base mesh from
3ds Max into ZBrush. To avoid
having several subtools in ZBrush
I export all my slabs in one ex-
port, but I keep each slab as a
separate object in Max.

This will cause each slab to be-


come part of a different poly-
group in ZBrush.

This way it will be easier to work and you won’t have to deal with a bunch of subtools. You can sculpt the individual
polygroup slabs by pressing CTRL + shift and clicking on the slab you want to select. (And CTRL +shift to deselect)

VERTEX
TEXTURING
270

Preparation in ZBrush
Since the dynamesh tool appeared in ZBrush the
workflow for a lot of artists changed. I apply dy-
namesh to my slabs so they have good topology
to sculpt on even though I imported them as very
low poly objects.

To do that, I just need to split my polygroups into


individual subtools, apply a dynamesh to each
one and then merge everything back to recreate
my original polygroups. Be gentle with the reso-
lution you choose for the dynamesh, this is just
to create a basic topology.

At this point, every slab has been “dynameshed” and everything is back in one subtool again with different polygroups
for each slab.

VERTEX
TEXTURING
271

Sculpting
Define the edge
Particularly for slab textures, I always start sculpting the edges of the slabs. The most important thing to remember is
to keep the square aspect of the slabs. Don’t sculpt them too much and make them flabby.

VERTEX
TEXTURING
272

Morph Target
One of the things I like in ZBrush that allows me to modify my sculpture when I want is the Morph target. After you
store the initial shape by clicking on the button, you can use the Morph brush to soften or revert any changes you make
afterwards to the initially stored shape. It is important to note that you do not have to necessarily revert everything.

Adding Details
Now that I have my edges sculpted I start adding in some details. I decided to add some runes on this texture while still
keeping in mind that this is a tileable texture. So like the bigger slabs previously mentioned, I place the runes so they
are equally spaced on the slabs. I used two alphas created in Photoshop to accomplish this and applied them with a
standard brush.

VERTEX
TEXTURING
273

After placing them I just refine them a little bit using the flatten brush. Then, I put the stone details on the slabs. I used
some custom brushes and custom alphas to be faster with my sculpting. I encourage you to do the same and find the
perfect sculpting process for you. I always try to keep in mind the repetition of the tile and add an evenly distributed
amount of detail.

To sculpt stone slabs and rocks, I generally use the Move brush to create an effect of layered stone. To do that, I start
by masking an interesting area with the Mask lasso (1) and I use the Move brush to push it a little bit and create a layer
(2). I often use the Morph Brush (like previously mentioned) to soften the shape created (4). I always use the Flatten
brush to refine almost after every step (3; 5; 7) I alternate this technique with some custom brushes to work faster (6).

To create my own custom brushes I use a tool called MRGBZGrabber. With this technique, I’m able to create new
alphas I can use with the standard brush and I can modify in the Alpha tab.

When I’m satisfied with the sculpture for my alpha, I click on the MRGBZGrabber button to switch in 2D mode and I
can select the area for my alpha with a square selection. My new selection appears directly as the current alpha used
and I can save it to use it later. In this way, I can put my custom alphas in the Standard brush with a drag stroke to
create a new custom brush.

VERTEX
TEXTURING
274

Make it tileable!
We are going to duplicate the subtool of slabs three times and move each of the new subtools created with the trans-
pose tool. In this way, you can check if the tile looks correct and it will help you to properly create a basic texture to
put in Photoshop .

VERTEX
TEXTURING
275

If I have too many polygons after doing that and it becomes “laggy”, generally I merge every subtool into one and I use
the decimation master. With this plug-in, you will be able to reduce the number of polygons without changing the
appearance of your sculpture. Then you can export the subtool as an .obj to bake it later and generate some useful
maps.

Baking and Rendering


So technically, I use two different processes to create my maps. I do several renders in ZBrush with different materials
and I put them in Photoshop to composite later. But I also use my ZBrush high poly to bake an ambient occlusion map,
a normal map and sometimes a height map. I have to admit I’m currently thinking about reducing my two processes
into one and render those baked maps directly in ZBrush to be faster. But I will show you what I’m currently comfort-
able with at this time.

Rendering with ZBrush


Because my final resolution for a texture is generally 512X512 (sometimes 1024X1024), I generally use some print
screens from ZBrush to make my different renders. For me, each texture is different because, depending on what kind
of material it is supposed to be (wood, stone, metal…), my ZBrush renders will be different too.

VERTEX
TEXTURING
276

But, most of the time, I use the same bunch of ZBrush materials as a basis
for the texture and I add some others to create the different materials.
My render parameters are very simple because I don’t change a lot of
things compared to the default parameters. I encourage you to create sev-
eral custom Matcaps for what you need exactly.

I generally use:
- A version of “Matcap red wax” but colored in grey.

- A Matcap called “Matcap white” because it’s very contrasted and the
light is from the top.

- A black and white custom Matcap with an ambient occlusion and cavity
information.

- A custom Matcap with very visible highlights

- Some other Matcap that simulates the material of the texture.

MatCaps

VERTEX
TEXTURING
277

I put all the print screens in Photoshop and I apply some guides to define the tile of my texture.

As you can see, it’s not perfectly a square texture but I will resize it. My goal resolution for my texture is 512X512,
and I can easily resize it without to be too worried about the result.

Baking
Like I said previously, I also use my ZBrush high poly to bake some different maps. I use xNormal to bake them be-
cause I think it’s really easy to use and you can get some good results with it. After exporting my high poly to an .obj
in ZBrush, I will use it in xNormal to generate my new maps. But I also need a low poly model. Because this will be
a flat texture, I will use a simple square plane created in 3ds Max. I have to be sure UVs are correctly made and the
plane is placed correctly. So, I import my high poly (previously decimated) in 3ds Max and I just create a plane on it. I
check to see if the UVs are good and I export my plane as an .obj.

VERTEX
TEXTURING
278

Next step is to put all those .OBJs in xNormal. So I put my high poly in “high definition meshes”; my plane in “low defini-
tion meshes” and I check the baking options. I generally bake a normal map, a height map and an ambient occlusion in
1024X1024 to be sure to have enough resolution.

VERTEX
TEXTURING
279

Texturing
Create a Composite Basis
Now, I just have to composite everything in Photoshop to create a nice base texture to paint over. I simply match the
baked maps with the print screen maps. Every texture is different and I just play with my maps differently for each
texture but there are some rules though. I usually start to work with my print screens from ZBrush and create a first
pass. My AO map and my “white” are generally in multiply (or overlay sometimes). For the rest of the maps it’s es-
sentially just a feeling of what I want to have.

Concerning the baked maps, I start to add some colors. I always use the channels of the normal map (blue/green/red)
to give some light information on my texture. I also use my normal map to generate a cavity map with nDo. I gener-
ally put my cavity map in overlay but it’s also very useful to enhance your highlights with the layer modifier “levels”.
My height map helps me to enhance the depth of my texture and you can put it as a mask (inverted or not) to colorize
your depth.

I use my ambient occlusion map in multiply and I generally color it by adding the layer modifier “hue/saturation” on it.

For every step I always check the tile of my texture in Marmoset by applying it on a plane with a repetition on UVs. In
this way I can easily check that nothing is too specific for the tile.

VERTEX
TEXTURING
280

Give the hand-painted feeling!


To give this feeling, I just have to
paint over my composite base.
So, this part is different for each
texture but for a slab texture here
are few tips.

I start by using an offset on it to


check the borders and I correct
it if necessary. Then, I reduce the
contrast of my texture because for
me a stylized texture should never
have a perfect black on it. So I put
a color layer in “lighten” to color-
ize the dark spots of my texture.

I also add some small color varia-


tion on the slabs and some small
details. I enhance the highlights
on some parts.

I try to give a hand-painted feel-


ing by painting over shadows
and lights and let the mark of the
brush sometimes show. The sculp-
ture in ZBrush already gave me all
the light and shadow information
that I need, so it’s very easy to fol-
low them.

VERTEX
TEXTURING
281

For a slabs texture, I always add some slight color variations on different slabs. It has to be very light, because with the
tile everything will look more significant.

When I’m satisfied with everything, I always finish by adding an unsharp mask on my texture to sharpen it a little bit.
One thing I really like with this process is I can modify exactly what I want in Photoshop. Unlike a full next gen process,
even if I’m not entirely satisfied with my sculpting, I can change it by painting over it.

About Me
I have always loved to play video games but my true love was draw-
ing and digital art in general. I did some studies to become a 3D
artist in animation for movies but when I was hired for my first job
in a video game company (Ubisoft), I knew I wanted my career to
be in this industry and in this culture. Unlike the rendering process,
I really like the ability to play directly in the environments I created
and enjoy the gameplay that is involved in it.

I was born in France and I have worked in two companies in France


before coming to America to working for Blizzard Entertainment.
I’m currently working on World of Warcraft as a dungeon artist and
I’m glad to use ZBrush to do my textures on this mythic game. I love
the stylized art in video games and I have always tried to improve
my own art in this way.

I very much enjoy working on environments because I like thinking


about creating an ambience and developing different atmospheres
with the lighting, modeling and texturing. I’m always glad to meet
new passionate people and I have learned a lot from them at every
company I have worked.

Fanny Vergne
w w w. f a f a r t . b l o g s p o t . c o m

VERTEX
282

Dmitriy Rabochiy www.zxcman.cghub.com


283

Jon McCoy www.jonmccoyart.com


Wrecked Apartment
284

Wrecked Apartment
Wiktor Öhman
Workflow & Pipeline Breakdown by:

When starting out this project I had a clear set of goals. This was to be a project which challenged and taught me
things, which it truly did. I had decided to, almost exclusively use Quixel’s tools NDO and DDO for the texturing, which
proved to be a huge time saver as well as quality-booster.

This was my first contemporary environment and with that came a whole array of things I haven’t had to give as much
thought to before, such as scale issues become really glaring very easily and also the small things that give it away. See-
ing as it’s an environment which is very familiar to us, unlike SCI-FI which I usually work with, even the smallest things
can look out of place if not properly handled, such as out of scale props, poor material definition or lighting that looks
off.

So with that in mind I had to take precautions, which might seem totally obvious to most of you, such as an in-depth
breakdown and a floor plan for the outside hallway (for the light!). Usually when I work on personal environments I
usually, and I’m rather ashamed to admit this, don’t make a proper block out before starting out. Instead I usually just
make the final-ish wall tiles, make a couple of props and then, after all of that, I start making block out props, environ-
ment features etc. to check scale with. This has worked pretty well for me so far but I do see the huge advantage you
get by actually spending the time creating a block out or greybox map before jumping into proper production now, and
it’s definitely something I will keep doing from now on. Lesson learned!

So what I did when creating the block out was to match it up as closely to the concept as possible, as well as taking FOV
into consideration. This was pretty easy seeing as the layout of the apartment is rather straight forward. The rooms to
the left and to the right were pretty difficult to make out, so I had to find photo references for rooms that I both liked
and seemed to fit the style. I also adjusted the heights of the doorways, as I thought they looked way too tall. As for
the room to the left, I decided to make it rounded, as I thought it’d allow for a more dramatic feeling, both in terms of
lighting and for composition, and I do think it worked out really well!

VERTEX
Wrecked Apartment
285

Once the block out was made it was time to start mod-
eling the actual assets. I started out with the walls, see-
ing as it’s such a huge part of the environment. What I
did here was that I made a very simple high poly with
shapes and bevels for the trims. I could’ve done it with-
out a high poly, but it was such a quick model to make
so I did it anyway.

VERTEX
Wrecked Apartment
286

As soon as the wall was baked, with xNormal, I went into Photoshop and NDO to detail it. For this asset it was a very
quick pass with NDO, but I think it made a huge difference. What I did was I found a base photo of rough paper that
resembled the texture of wallpaper a lot.

I then generated a photo normal with NDO. First the large, soft and subtle shapes (very subtle!), then I built my way up
to the fine and very small details like the fibers.

Layering details like this really does help create a believable material definition, and it’s one of NDO’s greatest strengths,
seeing as it allows you to completely separate the different features, such as cracks in rocks, the fine gravel inside those
said cracks, the fine texture of the rocks themselves and so on, and allowing you to change those features any time you
like, non-destructively.

VERTEX
Wrecked Apartment
287

When the material definition for the wallpaper was done I found a nice pattern that I like, tiled it up and edited it and
applied it to the model. I then saved this out as a base diffuse with nothing else than the wallpaper on it. This texture
I later used as a pre-made diffuse base for DDO.

This allows me to add details on top of it, such as subtle stains, miscolouration and so on. The DDO pass on the wall was
pretty short. As I just mentioned I simply added some miscolouration and grime to it, mainly in the spec and gloss maps.

VERTEX
Wrecked Apartment
288

I also came up with a pretty cool effect when browsing the detail browser! I used the detail called Smear, reduced the
diffuse, specular and gloss opacity to around 10 and increased the height opacity slightly (making the color white). This
created a really cool effect, emulating a clumpy, sloppy paint job which is often seen in old apartments such as this.

Using that effect as a base I created a DDO preset for all white-painted surfaces in the scene, which saved me a lot of
time.

After using DDO a lot since it was released I’ve learned a lot about texturing by looking at what it does with my input
maps and how it reads them. I’ve also learned a lot about basic material definition by looking at its stock presets. Ma-
terial definition was, as it usually is, a huge part in this project and I had to tweak the values very carefully to make
them read well. That is also something that’s a lot easier by using DDO, seeing as DDO allows you to control the base
reflectance of both the diffuse, specular and gloss, as well as the reflectance values for the details by just changing the
opacity or color value of the detail/material without having to switch back and forth between documents or groups.

VERTEX
Wrecked Apartment
289

An example in which I had to use DDO’s reflectance values a lot


was the door. It has several different kinds of metals and wood on
it, all which has their own reflectance value and details.

The first thing I needed to do was create the fine normal details for the wood. I used the same technique as I showed
you on the wall. Found a base photograph, placed it and scaled it properly all over the door and then converted it to a
photo normal. It’s all about finding the sweet spot where it reads well, without being too over the top, but still exag-
gerating it slightly to actually make it visible from far enough away.

VERTEX
Wrecked Apartment
290

I also did a pass where I added some scratches here


and there using NDO’s sculpt mode and just painting
out the scratches using a white brush. Once the normal
was done I created a quick color map which DDO will
use to split the texture up into material groups, each
which has its own reflectance values and details.

After the correct reflectance values were assigned to the corresponding material, I added the details. This is probably
the most worn asset in the scene, with the motivation that it’s most likely the only thing that hasn’t been renovated
the last 40 years, plus it’s more exposed seeing as it’s facing out into the hallway.

Since the door is very repetitive in its panels, shapes and so, the details became pretty repetitive as well. The way I
solved this was to click the mask icon, paint out the details where I didn’t want them and then CTRL-click the mask icon
to propagate all the changes I made to all the other maps (spec, gloss and height).

VERTEX
Wrecked Apartment
291

Certain props, like the computer, were made entirely using NDO. What I did was I made a very simple mesh – pretty
much just a beveled cube, UV mapped it as straight as possible, baked an AO Low -> Low using xNormal and then
opened the UV wires in Photoshop.

Using the UV wires as a guide I started adding features such as the floppy drive, CD-ROM drive and other details. Once
the normal map was done, I generated an AO map using NDO’s convert module and combined it with the AO map I
baked before. This would’ve been possible by creating a high poly and baked, but it saved me a lot of time doing it
with NDO. All-in-all, creating the computer took me about 3 hours, with the texturing included. Like the other props
in this environment, I decided not to go over the top with wear and tear, and instead go for an old and used look with
miscolouration and slight edge wear, which DDO handled excellently. I used the details plain edge, miscolouration and
color fill extensively.

VERTEX
Wrecked Apartment
292

About 25% into the project I decided to change engines from UDK to CRYENGINE after trying a few props out there for
fun. I really loved the way CE3 made the props look, and how easy it was to define the materials. Not saying that you
can’t do the same in UDK, but it was just easier in CE3, which saved me even more time.

Image Rendered in UNREAL ENGINE

Image Rendered in CryEngine 3

VERTEX
Wrecked Apartment
293

In retrospect, it probably would have been wiser to place the apartment inside a NoVis area (blocks out environment,
sun, sky etc) and used spotlights and point lights as sun and ambient light, but lesson learned. I used the Time of Day
settings to light my scene. I rotated the sun to the right position, then changed the time so that the light came through
the door like I wanted it. Then, the rest was more or less only a matter of adding fill lights wherever they were needed,
utilizing both diffuse-only and specular-only lights to accentuate reflections and specularity where needed. There is
really nothing to it, other than looking at the scene from a couple bookmarks, toggling back and forth and trying to
see what needs to be more prominent, or less for that matter.

In order to help me with the lighting and to help me guide the eye through the scene, I had a couple of things I
checked now and then. The first was to desaturate the scene in Photoshop to see if things were nicely separated and
defined without being distracted by their respective saturation or hue. This can be taken even further by squinting
your eyes or blurring the image slightly.

The second thing I did was to take a screenshot into Photoshop, select a bar and average its values (Filters -> Blur ->
Average). I did this all across the image until it was filled with flat-colored bars.

VERTEX
Wrecked Apartment
294

What I strived for with this was to have a nice, smooth gradient, peaking towards the middle of the scene, where the
corner is without anything sticking out too much. To the right there’s a pretty bright line, which is the kitchen, but I
thought that was fine and actually contributed to making the composition even more interesting, so I didn’t do any-
thing about that. As a last check I did the same, but vertically.

Pretty much the same thing goes here – I wanted it to be a nice, smooth gradient, peaking towards the middle of the
image. The brightest parts are more 75% towards the top, but it was difficult to avoid with the white ceiling and trims,
and it was even further up before I darkened the ceiling and tweaked the lighting, so these checks really did help. I kept
tweaking the lighting and textures until I was happy with the gradients and with the color palette.

Related to this is something called Color Grading. In a nutshell, what it does is that it allows you to grab a pre-made
color chart consisting of different gradients (the appearance depends on the engine!), which is called a Look-up-table
(LUT) that you can add on top of a screenshot of your environment in Photoshop. Then you can add adjustments on
top of that, such as levels, curves, brightness/contrast and hue/saturation. Make sure the adjustment layers are on top
of the LUT! Once happy with the appearance, simply specify it in the engine you’re using and those adjustments you
made in Photoshop will be transferred to the engine. Such a simple thing, which can really help make your scene pop.

VERTEX
Wrecked Apartment
295

The difference isn’t huge, but it still makes a noticeable difference, which affects the mood a lot. The final adjustment
I wanted to do before calling the environment done was to add depth of field. I set it up through the Track View, which
allowed me to set up a different DoF setting for each ”shot” for the presentation, without me having to adjust it each
time I switched views.

VERTEX
Wrecked Apartment
296

In retrospect I might have gone a bit overboard with the DoF, but it does add that level of realism I was looking for. A
reoccurring part of my workflow in this scene was to make simple high poly models which I then baked down, just as I
did with the wall I wrote about earlier. Then use NDO to apply a nice, crisp material definition pass. One good example
of that is the teak table.
The separation between the wooden segments were made in just
a minute or two by painting lines where I wanted the separation
and converted to a normal detail, then on top of that I used NDO
to get the wood definition in.

The wood normal was simply a photo which I extracted some de-
tails from. I made sure to save the base photo I used for the nor-
mals as a base diffuse for DDO, just as I did with the wallpaper.
Using the updated normal map and base diffuse I was able to add
even more wear on the table, such as subtle scratches, miscol-
ouration and sun bleach.

All-in-all, this was a really educational pro-


ject for me. I got to use NDO and DDO in
a way I hadn’t used them before (clean,
subtle and photoreal-ish stuff), and I also
learned a lot about how to tackle an envi-
ronment with a large number of props and
assets, by closely looking at a concept, and
looking at what you can skip and what you
can add in order to save time and to make
it look even more interesting.

VERTEX
Wrecked Apartment
297

About Me
My name is Wiktor Öhman, or maybe more known as Disting online.
I’m working at Quixel, mainly working with 3D art, promotional art
and also learning material.

I’m born and raised in Malmö, Sweden where I’ve lived most of my
life. I’ve worked at a couple game studios and also studied game art
here, and it’s a very good environment when it comes to the games
industry, and art in general.

I’ve always seen myself a creative person, and I’ve always looked for
ways for me to best express myself. I started playing the guitar, started
making electronic music, website design, web development, drawing,
2D design and photo manipulation. It wasn’t until 2007 when I stum-
bled upon a flyer from the School of Future Entertainment at school
that I finally realized I could do what I’ve always wanted to do. Game
art! I hadn’t touched any 3D applications back then and I barely even
knew anything about games other than the fact that I loved playing
them. I got accepted into the school and I haven’t looked back since.

Wiktor Öhman
w w w. d i st i n g . c g h u b . co m

VERTEX
298
ALEX ALVAREZ
Founder/Director, Gnomon School
299

IMAGE CREATED WITH MEGASCANS


The End
300

Well folks we have done it again, we finished yet another addition to the library. Thanks to all of our supporters and
those who contributed their time to create content for the book. I would also like to thank friends and family for
putting up with us while we created this in our free time. All of this would not be possible if it was not for you the
entertainment communities letting us know that there is a valid need for something like this out there. By sharing
our workflows and tips and tricks with one another it can only make our industries stronger and the content we
create that much better. It is also important to know that all the content created by the artists was done entirely in
their own spare time set aside from their jobs and social lives to contribute VERTEX. On top of that, none of artists
and contributors asked for any financial compensation for their time and effort spent putting this together and were
willing to donate this content to better the game-art community as a whole. I apologise in advance if you find any
errors within the book, whether they are grammatical errors or formatting errors. But bear in mind that some of the
content was written by non-native English speaking artists and in some cases the articles themselves weren’t origi-
nally written in English and required translations as well. Thanks to our friendly editor Derek Burris for spending his
nights reading and editing text. Lord knows that would drive anyone bat shit crazy hah :).

I really hope you enjoy all the content that in the book and we have done the best that we can in such a limited time
and with limited resources. However, if you do spot something, please share it with us via email on our website.

To those of you who have gone above and beyond by supporting us with a donation I would like to thank you. It
means a lot to us and the money will go to keeping this going and alive. When you donate to VERTEX the money is
never used for personal gains or salaries of any sort. We are not creating these books for monetary gains and do this
for free because we love it. All donations go directly to the VERTEX PayPal account and sit and get spent on things
when we need them like servers and bandwidth and other things. Thank you again for supporting us with a dona-
tion.

DONATIONS FROM:
Jonathan Johnson John Wise Matthias Rottländer Stephen Stone Wesley Mackinder
Darren Horrocks Saxon Dixon Greg Schneider Charles Vernier Meinte van der Spiegel
Andrew Indrikson Peter Frey David Bailey Mikael Kivi Karen Stanley
Gavin Eastwood Dmitry Pedyash Guzeev Anton Paul Packham Rodrigo Figueira
Scott Homer Alvin Chung Eric Brown Joe Wilson Magnar Jenssen
Dylan Brady Jens Brandenburg David Bailey Timur Ariman Tamara Bakhlycheva
Sebastian Włoszek Chris Campbell Simon Kopp M Van den Berg Sarah Quek Ping Sian
Edward Ferguson Denis Oudalov Conor Bell Jonathan Shelley Paul Nasdalack
Edwin Bolscher Andrew Davies Eric Vanic Ondřej Holan Rhett Mason
Simon Labreche Dmitry Pedyash Bradley Harris
IF YOU WOULD LIKE TO SUPPORT US BY SENDING US A DONATION PLEASE USE THE LINK BELOW!!

DONATE NOW
To all of our readers I would like to thank you for downloading this or spreading it to friends or co-workers. We are
still a new thing to the entertainment industries and a great number of people still do not yet know we exist or that
they can download this for free. Please continue to help us spread the word by either sharing the books with people
or sending them to our site or just bring it up in conversation.

PLEASE VISIT AND LIKE US!!


Facebook Page: https://www.facebook.com/artbypapercut
Main Website: http://www.artbypapercut.com

CONTENT CONTRIBUTION!!
If you would like to contribute to creating an article or would like to have a pimp page of your work we are always
looking for new content for current and future books. Please visit our website and send us your information and we
will review your material or content and see about putting you in the next VERTEX.

Thanks for yet another awesome book, VERTEX 3 TO BE CONTINUED.........

Ryan Hawkins
Editor
ryan@artbypapercut.com

VERTEX

You might also like