CA195 home
CA195 - Building Game Worlds:
Level Design, Mods and Quality Assurance
UNREAL RESOURCES
NOTES FROM UT3 TUTORIALS WILL BE PROVIDED IN CLASS
YOU MAY USE UT3 OR UDK
(UDK IS AVAILABLE FREE FROM UDK.COM)
Free UT3 & UDK books on Safari Tech
 |
 |
Mastering Unreal Technology (UT3)
ISBN-13: 978-0-672-32991-3
Chapter 3 is also available here |
Unreal Development Kit 3 (UDK)
ISBN-13: 978-1-84969-052-2 |
(Textbooks for Flash, DW, C++, etc. are also available on Safari)
UT3 vs. UDK
Contests
Make Something Unreal Contest: Sometimes, Epic Games sponsors contests to make Unreal levels.
The contest is over for this year, but check out past winners &
play their levels:
IGDA UT3 Worldwide Level Design Contest
www.makesomethingunreal.com
Unreal Mods
I encourage you to play existing Unreal mods.
However, do not use
any of these mods in your assignments -- that would be cheating. You
can use free 3D objects and textures that you find online, but only if
these are free to use, and you document what you have used and explain how/where you used them in your level.
Unreal & Epic Games:
History of Unreal - Original ground-breaking game created in Rockville,
MD!
Engine and editor created by UMD grad Tim Sweeney.
Read history (An
old article describing the genesis of the Unreal game and engine released
in 1998. There have been many new versions since then).
Jobs @ Epic
Unreal tutorials
Web/Mobile
Building Notes - Intro
Subtractive vs. Additive
Rebuilding (update changes to geometry, lights, paths, etc.)
Actors
- brushes, triggers, lights & anything else that's not world geometry
- placeable vs. nonplaceable actors:
- Placeable: player starts, teleporters, lights,
jump pads, movers - represented by visible icon
- Nonplaceable:
weapon projectiles, HUD, game types, mutators - not visible (no
icon).
Interface:
- Main menu bar
- Toolbar
- Toolbox
- Viewports:
- perspective (3D) vs. orthographic (2D)
- Can toggle wireframe, textures only, dynamic lighting for perspective
viewport
- Console bar
- Browsers (texture, actor classes, mesh, animation, static mesh, prefab,
group, sound, music).
- Property windows (e.g. actor properties, surface properties,
primitives, build options)
Creating your first room
- 16 Unreal units = about 1 foot. But Unreal objects are
wider than they would be in RL. For example, Gorge (an Unreal character)
is about 6ft tall and 4 ft wide! Plus you want to leave extra room
for maneuverability.
- How tall? How wide? See CollisionHeight and CollisionRadius cylinder
p. 58. Rule of thumb: double property's value and add 5 to make sure
character
can pass through rooms/doorways/etc.
- Also consider common movements and how much approx space they take
up (in normal gravity):
- jump
height: 64 units
- double-jump height: 132 units
- dodge distance: 320 units
- dodge-jump distance: 720 units
- Grid: objects will snap to grid (to avoide gaps
& overlapping/HOM). But you can control grid snap precision to
between 1 and 4096 units.
- Brushes:
- Builder brush
- Red wireframe.
- Use builder brush FIRST to define shape. Then use other brushes
(subtractive, additive, etc.) to actually create that shape
in the level. Right-click to edit dimensions.
- Subtractive brushes
- Use after setting the shape with the builder brush. (Or modify size with widget)
- Will subtract that shape from the level. (The subtracted
area will have default texture or most recently used texture
from the texture browser.)
- Yellow wireframe.
- You'll always use this brush to create the first space in
your level if you are doing a subtractive level b/c Unreal starts with a solid mass from which you
subtract room space. So it is a good idea to select your texture
first.
- Additive brush:
- Use after setting shape with the builder brush. (Or modify size with widget).
- Will add that shape back into the level
- Blue wireframe.
Troubleshooting & Tips:
- Player dying immediately? --> Rebuild geometry
- Too dark? --> Add more lights --> Rebuild lights
- Textures not appearing, or other weirdness? Check that you don't have brushes on top of other brushes. (i.e. if you click "subtract" twice, you may create 2 brushes).
- Check for patches
- Save often!
SHORTCUTS & KEYS:
Ctrl + L drag = move stuff
Ctrl + R drag = rotate
Ctrl + S = subtract
Ctrl + A = add
Ctrl + N = intersect
Crtl + W= duplicate
Shift+B = to select all faces (after clicking 1 face of your room)
Ctrl+Alt+L drag = create marquee selection box (e.g. to select multiple
items)
Camera button = editing mode
Navigation:
There are four default viewports: 3 orthographic 2D views (top, front & side)
and 1 perspective view (shows distortion).
- In perspective view:
- R mouse = look around
- L mouse drag = move camera (like walking through the level) -
forward/back, up/down
- Both mouse = pan camera (e.g. to look at the upstairs or downstairs
of a level)
- In orthagonal view:
- L mouse drag = pan
- Both mouse = zoom
- Where is your camera? The eye+arrow symbol.
- Note that these views don't update automatically. Only the active
viewport updates as you make changes. (To have another viewport
update as well, click the real time playview button in
the viewport you want
to
update).
Carving out space from a world of solid mass:
- Click cylinder button
- Red outline is builder brush (where cylinder could be created)
- Click subtract button (see room with default texture)
- Yellow brush is subtraction brush
- L click on red brush to select builder brush, then Ctrl +
L drag to move it out of the way
(if you have nothing
else selected, Ctrl + L drag will automatically select builder brush).
Add space back in:
- Click cube button
- Put cube in middle of cylinder (Ctrl + L drag)
- Click add button
- Blue brush is add brush
- If you make changes, rebuild geometry (button at top that looks like
a cube)
Delete both objects and rebuild. Start again.
Create a square room:
- click cube button
- R click to choose cube size (use powers of 2, e.g. 2, 4, 8, 16...)
- Enter these dimensions: width=512, breadth=512
- About dimensions: Generally need 96 units for walking height, 64
for crouching.
- (Don't change hollow or tesselated. Tesselated means use triangles
instead of polys -- often used when you need to edit an object but
keep it planar. Don't worry about it for now.)
Apply texture:
- Open texture browser (button at top that looks like a landscape)
- Choose open texture packages (button that looks like a folder) --
these are files containing a themed series of texture maps.
- Choose HumanoidArchitecture package.
- Choose walls from drop down
- Click 1 face of your room, then Shift+B to select all faces.
- Deselect floor and ceiling faces using Ctrl.
- Click on your texture to add it to the selected faces.
Add player start:
- R click on floor --> Choose "Add player start"
Add weapon:
- Add weapon base
- Click actor class browser button (at top, looks like pawn)
- Click PickUpBase
- Select xWeaponBase
- Now when you go back to level and R click on floor, "Add xWeaponBase
here" is a menu option. Choose it.
- Choose weapon type
- R click base --> Choose properties.
- Under "weapon type" --> Choose "ClassXWeaponsRocketLauncher"
Add light:
- R click on ceiling --> Choose "Add light here"
- R click on light --> Choose properties --> under "LightColor",
you can modify color, brightness, etc.
- Build lighting button (at top). (Light changes are not visible
in perspective view until you build lighting. Then you will see the
shadow maps.)
- Pull light down a little for more illumination of the ceiling.
"Build all" button (cube plus light bulb)
Play button (joystick)
- It's a good idea to save your file in case of crashes. However, you
don't need to save in order to play the level (it runs from a temp file).
- When playing, look at the light on the ceiling -- there is no actual
light mesh there. You would want to put a static mesh object that looks
like a light to have the lighting make visual sense.