CryEngine taster session
Overview of the session
The taster session will offer an introduction to CryEngine and its toolset to create
detailed and realistic looking terrain. The level 5 module CT5016: Level Design
covers CryEngine, Unity, Unreal as well as Level Design theory in much more detail.
Self-study activities
The version of CryEngine used for this taster session is completely free and can
be downloaded from: http://www.cryengine.com/community/downloads.php This
version is no longer maintained or updated by Crytek.
The most up to date and maintained version of CryEngine can be licensed
through Steam for a small monthly fee.
CryEngine is capable of much more than what can be covered in this short
session. If you enjoyed the session it is recommended to spend some more time
on it at home.
There are some excellent introduction tutorials available at World of Level Design:
http://www.worldofleveldesign.com/categories/cat_cryengine_3_sdk.php
Tutorial
In this tutorial you will use the CryEngine Sandbox level editor to create a terrain that
can be used as a basis for a level.
1 Start the CryEngine sandbox
editor by double-clicking the
Editor.exe in the Bin64 folder
of the CryEngine folder
structure on the C: drive
2 When you use CryEngine for the first time you will need to create an account. Use
the following link to do so: http://www.cryengine.com/community/ucp.php?
mode=register
Tick the box to agree with the Terms of Use and use an email address that you will
be able to access through a web browser as you will be send an email to confirm
your registration.
Use your newly created login and password to start the CryEngine Editor
Andre van Rooijen, © 2015 1
CryEngine taster session
3 Once the Editor is loaded it will
present you with a Dialog
where you can load an existing
level or start a new one.
Click New Level to start a new
level.
4 Use the New Level Dialog to
give a proper name and set
the initial dimensions for your
level.
Name your level: MyLevel
Set the Heightmap Resolution
to 512x512 and leave the
Meters Per Unit to 2.
The generated terrain will be
1024x1024 meters.
Click OK to confirm
5 The Generate Terrain Texture
dialog box will appear.
Leave all setting to their
default and click OK to
continue.
CryEngine will now generate
the level.
Andre van Rooijen, © 2015 2
CryEngine taster session
6 The new level is created but
there is only an ocean and a
sky.
The terrain is actually there but
it is completely flat and sits
below sea level.
7 Moving and panning in the The Speed of your movement can be set at the
editor is quite similar to other bottom of the viewport.
3D tools and games.
Use the Right-mouse button to
look around.
Use the Middle-mouse button
to Pan within the viewport.
Use the W, A, S, D keys to
move.
Use the Left-Mouse button to When moving you can also hold Shift to move
click-select or drag-select faster.
objects in the viewport.
8 Time to create some
interesting terrain.
In the tools panel at the top;
click on the Edit Terrain button
9 In the Terrain Editor go to
Tools > Generate Terrain…
Andre van Rooijen, © 2015 3
CryEngine taster session
10 This present you with a list of
parameters that define the
nature of the terrain.
For now, use the default
values. At a later stage it’s
advised to experiment with
these and evaluate the effect
on the terrain.
Note that only small changes
to these values will result in
very different terrains.
Unfortunately the values are
reset to their defaults every
time you open this dialog.
Click OK to continue
11 CryEngine has generated a
heightmap. This is a 16bit
(~64K values) grayscale
where white represents the
highest point and black the
lowest point.
Note that in the viewport the
terrain looks extremely pointy
and unrealistic. That’s
because the height range is
too high.
12 To fix this, in the terrain editor,
select Modify > Set Terrain
Max Height
The Dialog shows that the
current value for pure white is
1024. That’s meters, so the
highest peak is 1KM!
Set this to a more realistic
value like 180 and use Tools >
Generate Terrain… to
regenerate the terrain (step 9)
with the new max height value
Andre van Rooijen, © 2015 4
CryEngine taster session
13 The generated terrain is just a
start.
Terrain tab
You can use the Modify
Terrain tools to tweak the
terrain towards your intended
design.
Modifying can be done on the
heightmap in the Terrain Editor
but most users will want to edit
the terrain mesh directly using Modify
the modify tools in the terrain
RollupBar on the right of the
viewport.
Select the Terrain tab and click Tools
on the Modify button to access
the tools.
These tools work like a brush
on the terrain in the viewport.
The brush has an outside and
inside radius that can be set.
The effect of the brush will be
0% at the outside and 100%
within the inside radius with a
linear falloff between these
values.
Hardness sets how strong the
effect will be applied. It’s
advised to use low values for
good control.
Hold Ctrl to sample the current
height of the terrain.
Hold Shift to smoothen
differences in height.
The Flatten tool is very useful
for making terrain accessible
to the player, AI and vehicles.
Rise/Lower will add/subtract
from the current height.
Andre van Rooijen, © 2015 5
CryEngine taster session
14 Texturing Terrain
15 Notice how the terrain is
extremely pale. When
zoomed in, a generic
checkerboard texture is
visible. This is the default
terrain material.
Time to add something more
interesting
16 Click the Texture button in the
tools panel at the top of the
viewport.
The Terrain Texture Layers
menu will open with the
Default layer already in place.
17 Add a layer by clicking Add
Layer in the Layer Tasks.
A new texture layer will be
created. Change the name by
double-clicking it. Call it
Grass.
18 With the new texture layer
selected click on Change
Layer Texture in the Layer
Texture section on the right.
This will open a dialog
window that allows you to
browse for a texture. Select
grey.dds and click OK to
confirm.
19 To change the Material for
the new layer click on the
underlined blue text under
Material in the layers list.
This will open the Material
Editor window.
Andre van Rooijen, © 2015 6
CryEngine taster session
20 On the right of the Material
Editor window is a list of
available Materials.
Click on the + next to terrain
to see the available terrain
materials.
Click on grass_1 to select it
and see its parameters. We
leave these to their defaults.
21 With grass_1 selected go
back to the Terrain Texture
Layers window.
Make sure the new Grass
Layer is selected.
In the Layer Tasks section
click on Assign Material to
assign the material selected
in the Material Editor to the
Terrain Texture Layer
22 To use the new Terrain
texture layer go to the terrain
tab in the RollupBar and
select the Layer Painter tool.
The Layer Painter tool uses a
brush, much like the Terrain
Edit tool, that can be used to
paint a Material layer on the
terrain.
The brush has a Radius and
Hardness setting.
23 When you paint you will R:163 G:189 B:150
notice that the grass material
is applied but it looks very
pale.
To fix this click on the Colour
slot in the Layer section.
Select a slightly darker green
colour.
Click Save Layer to store the colour
Click Save Layer to store the
colour.
Andre van Rooijen, © 2015 7
CryEngine taster session
24 You can use the brush to
paint the terrain but it’s much
easier to use Flood.
Flood will apply the selected
Paint layer material to all of Constraints
the terrain based on the for Altitude
Altitude and Slope constraints and slope
set for that layer.
In this example Grass will be
applied to all the terrain
between 0 and 1024 in height
and to slopes between 0 and
90 degrees. Effectively this
means everything.
Click Flood to apply the
Grass layer to the entire
terrain.
25 Now, create another layer for
Rocks.
To do so; repeat Steps 16 to
21.
In the Material Editor select
cliff_gray_3d.
26 Once created the Texture
layer should appear in the list
of the Layer Painter tool.
Select it and set the
constraints for the Slope to 30
to 90 degrees and hit Flood.
Notice how the Texture layer
is applied based on the Slope
of the terrain.
Andre van Rooijen, © 2015 8
CryEngine taster session
27 Repeat the same workflow to
create Texture layers for
Sand but now use constraints
for Altitude: 0 to 24 and
Slope: 0 to 30. Use Flood to
apply.
Knowing that by default the
Ocean is set at a height of 16
you can create a separate
layer for Wet sand or
underwater pebbles.
You can create variations of
grass for higher altitudes or
even snow.
The beauty of this workflow is
that when you modify the
terrain or even generate a
new one you can just Flood
all the texture layers to
texture your terrain quickly.
Note that Flooding will
overwrite any hand painted
tweaks to the Texture layers.
28 Time to have a stroll through
your landscape and admire
the views.
Navigate the viewport close
to the terrain surface and use
Ctrl+G to spawn the player.
CryEngine allows you to play
in the editor which is great for
evaluating and testing your
work.
Hit Esc to exit the game and
continue editing.
Andre van Rooijen, © 2015 9
CryEngine taster session
29 Creating Roads
30 CryEngine features a
powerful tool to create Roads
and Rivers based on splines.
Let’s start with the roads.
In the RollupBar go to the first
tab; Objects.
Select Misc and next in
Object Type; select Road
31 Before starting to create the
road it’s important to check
that the Follow Terrain and
Snap to Objects setting is on.
32 Now click in the viewport to
place the first road spline
point.
Next move the cursor to a
different location and notice
how a smooth spline is
rendered between the first
spline point and the cursor.
Click to place the second
spline point and repeat this a
few time to create a road
spline.
33 Note that you can navigate
around in the viewport whilst
placing the spline points. As
long as no left-clicks are
made no spline point will be
created. The needs some
getting used to.
Double-click to create the
final spline point and end the
road creation.
Andre van Rooijen, © 2015 10
CryEngine taster session
34 In the RollupBar on the right
you can find the properties for
the road that has just been
created.
Click on the Mtl: slot to assign
a material to the Road spline.
This will open the Material
Editor.
35 In the Material Editor, on the
left browse to
materials>roads> where
several pre-defined road
materials can be found.
Select dirt_road and click on
the Assign Item to Selected
Objects button to assign the
material to the road spline.
36 The dirt_road texture will
follow the spline and be
projected onto the terrain.
The layout of the road can
still be edited. To do so click
on the Edit button in the Road
properties rollout.
37 Notice how individual spline
points can be selected and
moved around to tweak the
road’s layout.
You can also Ctrl+Click on
the spline to add spline points
or Double-click on a spline
point to remove it.
Andre van Rooijen, © 2015 11
CryEngine taster session
38 On steep terrain you might
want to tweak the road spline
to more gentle slopes for
vehicles.
Next click on Align Height
Map at the bottom of the
Road parameters rollout and
notice how the terrain is now
adjusted to follow the road
spline precisely.
39 Rivers can be created in
much the same way as roads.
The spline will indicate the
river’s surface and a tube
needs to be carved in the
terrain underneath.
40 Generating terrain and applying materials and textures are just the first steps in
creating a level. CryEngine offers a great selection of tools to create beautiful
landscapes and engaging gameplay situations. The engine features a fully
costomisable day and night cycle. There are tools to generate road and rivers.
Trees and foliage can be painted on the terrain. And Flow Graph offers a visual,
node based interface to created scripted gameplay sequences.
Andre van Rooijen, © 2015 12
CryEngine taster session
Andre van Rooijen, © 2015 13