You are on page 1of 27

Creating rock for UDK

Contents
Software Im going to us. ......................................................................................................................... 3
3DSMAX Base Mesh.............................................................................................................................. 3
MUDBOX High Poly Mesh ..................................................................................................................... 5
MESHLAB Creating a low poly mesh...................................................................................................... 6
3DSMAX UVWs ..................................................................................................................................... 9
3DSMAX Creating Texture Maps ......................................................................................................... 17
Photoshop Creating the final textures. ................................................................................................ 21
UDK Importing Completed Model. ...................................................................................................... 26
UDK Final out Come ............................................................................................................................ 26

Software Im going to us.

3DSMAX
Mudbox
Meshlab
Photoshop CS6
UDK (Can be done for any game engine)

3DSMAX Base Mesh


In 3DSMAX I began by creating a biped. To make the props accurate for UDK I changed the units setup
within MAX to generic units, the reason for this is because the average height of a player in UDK is 98
units tall. This gives an accurate scale to work with.

Next I created a standard box primitave whitch I create to the size and scale that will be reasonable for
my scene. I changed my box parameters to 100 x 100 x 200 units. This will alow me to create a tall thin
rock similar to whats found neer a cliff or beech. Im also going to add segments to the base mesh. I
found that keeping the segments in multiples of 8 alow for a better import and mesh divide within
mudbox.

With the base mesh complete I then removed the biped because wont be needed anymore. I exported
the box primitave as an OBJ format. The reason I export as an OBJ file is because the export options
window has a preset for mudbox. This make errors less likely to happen.

MUDBOX High Poly Mesh


After I imported the base mesh in to mudbox I inspected the base mesh to make sure there was no
errors in the mesh. I then changed the perspective camera field of view (FOV) to 50 this allows me to see
the model similar to how it will look within a game engine, I renamed it to HP_Mesh (HighPoly_Mesh)
this allows me to keep track of what Im working on. Using shift + D I added new subdivision levels. This
is how the base mesh becomes my high poly mesh. I subdive the mesh 5 or 6 times to the point that I
can start to add fine detail.

With my high poly mesh ready I begin to add detail using the sculpt, smooth, flatten and scrape tool
with the stamp CliffFace this alows it to look like rock. I begin moddeling by using the flatten tool on all
the edges this alters the shape and esentialy makes it look more realistic.

I began by used the


flatten tool on all the
edges to make it look
more naturally worn and
un-symmetrical.

Using the sculpt,


smooth, flatten and
scrape tool I began to
add the smaller detail
making it look more like
a rock.

After I was happy with


what I had created I sub
divided it once more and
began to add much finer
detail.

With my HP (High poly) prop complete I exported it as an OBJ format in the same file location as my
Base mesh so everything can be easily found.

MESHLAB Creating a low poly mesh


The next step is to turn the HP Mesh into a low poly object which can be use within a 3D game engine.
To do this Im going to use a free software called MeshLab which allows for the reduction of polys within
a model. I began by importing my high poly model into the software which took around 1 and a half
minutes because of the size.

With my HP mesh in MeshLab I found that the model had a total number of 2,621,442 vertices. To find
out my restrictions on the max poly count that I was allowed I visited the brief. With environment props
allowing 3500 polys per asset I followed this but to be safe I reduced the amount of polys for my rock to
2000. This allows me to be safe with the mount I have and so I cant accidently go over that amount.

Back in MeshLab I used the Quadric Edge Collapse Decimation tool which is found in the filters tab under
Remeshing, simplification and reconstruction. This opens a separate window which allows you to alter
the Target Number of faces.

Before changing the


number of faces

After changing the


number of faces

The images bellow show the diffrence between the high poly and low poply mesh. This shows what
happens when you use the decimation tool to reduce the number of polygones. I didnt have to alter
any other setting apart from the amount that I want to reduce it by. This proces takes roughly 30 - 40
seconds depending on the amount of reduction.

With the low poly model created I then exported it out as an OBJ file to the same location as the base
and high poly mesh. I named it LP_Mesh to make it easier to find. This is the final mesh Im going to use
in my environment.

3DSMAX UVWs
With the low poly mesh saved as an OBJ file format I closed mesh labs because I wouldnt be needing it
anymore. I then imported the high and Low poly mesh back into 3DSMAX. This is where Im going to
create the AO (Ambient Occlusion) map, diffuse map, Height map and a normal map which I will modify
in Photoshop.
To create my textures I began by importing the HP mesh and LP mesh into the same scene. Using the
manage layers tool I hid the HP mesh so I could only see the LP mesh in the scene.

To create the texture I have to create a uvwmap, to do this I applied the unwrapUVW modifier to the
low poly mesh. With the unwrap UVW modifier tool applied I used the Point-to-point seams tool to
create a seam that I could unwrap from creating my uv map.

Because the back of my rocks will be hidden and so will the base, I decided to add a seam which will go
around the base and a seem to the top. This seam is where the uvmap will peel from. Each seem was
different for each rock I created.

Once the seam was complete I selected a polygon on the mesh and selected the expand polygon
selection to seams in the peel tab.

With all the polygons selected within the seam I used the pelt map tool to open up the edit uvws
window and the pelt map window.

Using the select stretcher tool in the pelt options tab I increased the size of the stretcher which is the
red ring in the editor window. I increased the pull strength from one to five and then applied start pelt in
the quick Pelt tab. This stretched my uv so there is no over lapping faces. I the commit to make the final
map.

I repeated this process for the base of my rock. With both meshs complete I had to pack them into the
area for my texture map so I used pack UVs in the tools tab of the edit UVWs window. This placed
them into an area which I will then modify in Photoshop.

After I packed the uvw I used the relax tool which is also found in the tools tab to make sure no
stretching is going to happen on the final model. When doing this I changed the iterations from 100 to
200 hundred and the amount from 0.1 to 0.12 seams small but it helps.

then applied a checkered material to it just to double check that no stretching was happening. With the
checker material added I was able to inspect the model in closer detail which allowed me to see that
everything was correct.

With the uvw map complete I hid the LP mesh using the manage layers tool and made the HP mesh
visible.

With my HP mesh in my scene in then needed to create a Retrace material as a base for when import my
maps into Photoshop. To get an accurate base material I looked online for cliff rock. This gave me a color
I could aim to create.

I applied the texture and then altered the specular level and the glossiness this will help when rendering
the maps and will also help in Photoshop to make the rock look natural when in the game engine.

With the HP mesh texture I then used the layers tool to bring the LP mesh back into the scene and to
hide the HP mesh. To create the correct textures I had to apply a projection modifier to the LP mesh.

With the projection modifier added to the low poly mesh I had to make the HP model visible at the same
time so I could see both of them in the scene at once.

With the projection modifier applied I activated shaded in the projection modifier, this allowed me to
see what was being covered and if I would have to increase the push amount.

Before I increased the push amount


you could still clearly see the original
mesh bellow.

After I increased the push the whole


mash became shaded

3DSMAX Creating Texture Maps


With the projection modifier selected I press zero on the keyboard which brings up the Render to
texture window. This is what Im going to use to create my texture maps.
Using this window Im going to create my

Ambient Occlusion map


Diffuse map
Height map
Normal map

I began by going down to the projection mapping and enabling it projection map from my HP mesh had
to change the mapping coordinates also because I found that if you dont use the existing channel it will
ignore the UVM that I created earlier and it will create its own (wrong).

With my projection mapping sorted I had to specify the texture outputs that I want to create, Before I
create them I had to change my rendered in render settings to NIVIDIA mental ray. The reason for this is
I was unable to render an ambient occlusion when using another renderer.

When rendering my normal map I found that it doesnt always work so Im going to render it separately
using a different renderer (default scan line). I also changed the size of the map so I could stay in the
boundaries of the brief.

The last thing I had to do was specify a location to save my maps to and for this I saved them into a
folder near the original meshes.

With my first set of renders I found that my texture maps had red triangle dotted around, this meant I
had to increase the cage size in the projection modifier.

With my height, diffuse and ambient occlusion maps created I moved on to create a normal map. To do
this I disabled the other maps and enabled the normal map. I also had to change my render settings to
use the default scan line rendered. I done this just to make sure no errors would occur.

With my normal map enabled I rendered it to the same location as the rest. Now I have all my render
maps complete Im able to move into Photoshop so I can create the final texture.

Photoshop Creating the final textures.


In Photoshop I opened all the maps that i created all in separate documents, the reason for this is to
alow me to view them simutaniasly and see if there are any errors..

I began by altering the levels of the normal map so I could make it slightly more detailed and jagged as
this is what will make it look rough within UDK.

With the normal map altered I saved it into a different location which specifies that its one of the final
texture maps.

The next step I had to do was to overlay my ambient occlusion map over my diffuse map. I overlaid it
twice and changed one to an overly and then the second I changed to multiply. After I placed them in I
noticed that they were to light so I used the levels tool to make them darker. This is baked lighting which
will allow for a more realistic texture and It will also allow the game engine to run faster.

With my ambient occlusion maps in place and looking good it was time to add the height map but to do
this I first had to turn it into a mask which I will add to my diffuse texture. To create the mask I
duplicated my height map and then went to the select tab and load selection.

With the mask selected I applied the layer mask by right clicking and pressing apply layer Mask. With the
layer mask complete I used Ctrl+A to select the whole layer and then draged it into my diffuse layer.

With all my rendered maps in the correct place I can begin to add my own textures to the map.

Using the internet I was able to find three different rock textures which I can use to create my final
texture. Because the top of my rock will be on the left side of my texture Im going to have to rotate the
textures anti clockwise by 90 degrees to make it look real.

With the textures in Photoshop I began to layer them between the height map and the ambient
occlusion layers.

When I was adding them to my diffuse map I realized that the image sizes were greater than 512 x 512
so I had to go t image and image size to change them to 512 x 512 so I could stick to the brief.

Once I had all the textures in place I changed them to an overlay. This allowed me to see how they will
look as a finished texture. Once they were overlaid I noticed that the rough edges of the rock where
going vertical when they should be horizontal. While I was rotating the textures I noticed that they were
to dark so I altered the opacity and the hue and saturation as well.

Before texture rotation and


alterations in opacity, hue and
saturation

After texture rotation and changes


to opacity, hue and saturation

UDK Importing Completed Model.


With my asset complete i import them into UDK. I created a custom package and I renamed them to
rock_01. Using the material editor in UDK I added my diffuse and normal map creating a material in UDK
for my model.

UDK Final out Come


With my material created and my mesh ready I imported them into my scene to see how they will look
in my scene.

Im going to repeat this process to make a pack of 6 - 7 different rocks for my environment.

You might also like