UnrealEd Quick Reference
Tim Sweeney
Epic MegaGames, Inc.
tim@epicgames.com
http://www.epicgames.com/
This document is a trade secret of Epic MegaGames, Inc.
UnrealEd undergoes rapid changes so this document may not be up-to-date.
Known problems & limitations
- Now there are some blank icons on the UnrealEd toolbar (it will be rearranged later).
- We need a more user-friendly keyboard and button configuration interface (will improve
it).
- Moving brushes are lit according to which lightsources hit their pivot point, so if
their pivot point goes into a wall they'll turn black (I'll come up with some workaround
but I haven't figured out a good general solution yet).
- Network code bandwidth use is to high for 28.8 or ISDN play yet (will be fixed).
Version 161
- I had to make some major changes to saving/loading objects and scripts in order to fix
the savegame crashing problem (it was a BITCH!) So be on the lookout for weird behaviour,
because the one massive bug I fixed may have spawned other, little baby bugs.
- The "low shadow detail polygons becoming way too dark" problem is much
improved (you need to rebuild lighting to get this fixed). If you have any "low
shadow detail" polygons that are too dark still, using "bright corners"
should fix them.
- The 3dfx lockup problems should be fixed now. Let me know if this occurs again in
gameplay.
- You can now select actors by clicking on their radius in the radii view, so Inoxx can
finally delete that "invisible actor that only shows its radius".
- This contains the new version of Galaxy, with some music playing problems fixed (Alex)
and the crackling eliminated when you turn around quickly.
Version 156
- Fixed sound quality going to hell problem with reverb on non-MMX machines.
- Optimized mover dynamic lighting.
- Optimized occlusion some more.
Version 155
- Optimized lots of stuff.
- Note that the actor lighting code has been optimized by only applying the 6 brightest
lights to each actor (which is a big speedup in scenes with 20 or more lightsources!)
However, if you have a room with a large number of low-brightness lights, (1) the
"choose the 6 brightest lights" routine will cause the actor to be significantly
darker than the world polygons around it would indicate, and (2) slow down the
illumination caching time when going into the room for the first time. So, it's
beneficial to use fewer lights when you can, and design rooms with several bright lights
that do most of the illumination (so that actors will be lit up realistically) and
possibly a bunch of lower-brightness detail lights that usually won't affect actors.
- Fixed bug Inoxx mentioned with editor being 2X overbright than the game. :-O
Suggestions for making maps faster
Here are some fairly straightforward tricks that can be implemented in existing maps.
These are worthwhile enough that I recommend going back and applying them to
existing maps, in the worst-performance areas where you need a speed boost. The
areas that are noticeably slow are the large outdoor areas where you see buildings from
the outside, and areas which use a lot of dynamic light.
- When you have a huge outdoor area, have as few far-away meshes in view as possible.
Type "STAT MESH" and look at the "MESHCOUNT=xxx" number to see
how many meshes are in view. About 50% of the CPU time required to draw a mesh is
irrespective of its size, so if you have a gun lying on the ground a mile away,
but it's visible, even though it might only take up 1 pixel on the screen, it
takes several milliseconds for the engine to perform lighting, transformation, and teeny
polygon rendering on it. For example, in walking along the ridge in Bluff, the
MESHCOUNT is 6, though I was only aware of one mesh (the Nali). It turns out that there's
a transparent window, and two meshes visible through the transparent window, and three
meshes somewhere else (not sure where).
- In the huge levels that combine indoors and outdoors, like Bluff, where you want to have
transparent windows that players can see out of, use this one-way transparency trick: Add
a semisolid cube brush for the window; make the inside face transparent and one-sided; and
make the outside face non-transparent and one-sided. This way, players inside can
see out, but players outside can't see in. This noticeably speeds up maps when the
player is on the outside, looking in.
- If you have a lot of dynamic lights in an area, and you don't mind extremely fuzzy (low
detail) shadows, use the "super low shadow detail trick": If you select both
"low shadow detail" and "high shadow detail" on a surface together,
the engine uses a special "super low shadow detail" mode which is 4X faster for
dynamic lighting. Since this makes the shadows extremely fuzzy (which looks weird
sometimes), this isn't a good trick to use all over the place -- it's just for the areas
where you want to have a LOT of dynamic light, or dynamic light in huge outdoors areas.
Version 154 + Update
- Fixed the mover selection problems.
- Now you need to have a mover on keyframe 0 when you set its pivot.
- You should set the mover pivot point before setting its keyframes, because its keyframe
positions may be affected when you modify its pivot (sorry!)
Version 154
- Fixed the undo problems.
- Bound a bunch of new keys to the cheats. These match Cliff's list except that D is the
God cheat, and G is Grab.
- In radius view, only select actors' radii are shown.
- Fixed sky z-buffering problem in huge levels.
- When switching versions, you don't have to run Unreal.exe before running UnrealEd.exe
anymore.
Stupid UnrealEd Tricks
These are things people needed but I didn't have time to create proper user interfaces
for:
To align textures as floors (like for the ground in Pancho's hubs) AND scale them up, do
this:
1. Select the polygons.
2. Do the normal "align as floor" thing.
3. In the log window, type: POLY TEXSCALE RELATIVE UU=2.0 VV=2.0
The above command scales them up by a factor of 2.0. You can scale them up or down by
different amounts by plugging in different numbers, for example: POLY TEXSCALE RELATIVE
U=0.5 V=0.5
If you have a super-huge outdoor area and you want even lower shadow detail than
normal, you can check both the "Low Shadow Detail" and the "High Shadow
Detail" options. UnrealEd recognizes this as a special combination that means
"Superduperultralow shadow detail".
Version 153
- You need to do a PATHS DEFINE in this new version! If you don't, the savegames will
crash!
- Fixed shadowmap alignment on 3dfx.
- Fixed slider not updating values in property sheets.
- If you specify mapname?game=gameinfoclassname in the server's starting URL, that game
class will be used.
- Game now pauses when you're not in the game window.
- Fixed shooting when game is paused.
- Savegame problem -- fixed.
Version 152
- Steve's new code including in-game menus.
- My new windowed-menus; see View/Preferences.
- Cool new "actor properties" window.
- Ultrafast new actor lighting code.
- Coplanar semisolids now render properly on 3dfx.
- Screenshot brightness differences: In 3dfx, the screenshooter corrects for gamma based
on your current brightness setting. If it's too bright or dark, change your Unreal
brightness setting before shooting. If that washes the image out, you need to use a
program like Photoshop to adjust the brightness of the non-washed-out but too-dark image.
Look, this is going to produce way different results on everyone's screens because
monitors have different brightness settings and inherent gammas.
- Water leaks: If you rebuild the geometry, SKIP rebuilding the BSP, then you rebuild
lighting, I think all the water and zone leaks will be fixed! Let me know how this works
out for everyone -- does it fix all the leaks, does it fix some leaks, does it create new
leaks, etc.
- Not yet finished: User-friendly keyboard/mouse configuration.
- Not yet finished: Moving brush lighting code is still slower than hell.
- Not yet finished: Fixing semisolid collision problems.
Version 149
- Fixed "SHOT" reversing red and blue.
- Fixed the log window in the game and editor.
- "Geometry lock": This isn't a priority.
- "You can't tell that you clicked on an actor in the 3d view". Yes you
can, actors are highlighted when selected. If this is broken in some situation,
please show me.
- "It'd be nice if we could see the geometry in the 3d view, without lighting":
Use Mode/Textures and Mode/Wireframe Persp!
- "Game is 2X slower": I'll look at these issues in a few days when I'm back
working on rendering performance.
- Fixed "Special lit" on movers. If you use the "Special Lit"
tag on their surfaces, those particular surfaces will be special-lit. If you set
their bSpecialLit variable to True, then all of their surfaces will be special-lit.
- Savegame now works based on numbers (rather than filenames) in anticipation of having a
save/load game menu with positions 0-9. To save the game, type "savegame
1" or any number from 0-9. To load it, type "loadgame 1".
- To do: Need to fix the progress bar in the editor.
- To do: Put the UnrealEd toolbar back in.
Major changes for version 148
Overall, UnrealEd's interface is a lot closer to the interfaces of other Windows
programs, for example using "cut/copy/paste" instead of "duplicate",
using standard Windows selection commands (clicking on objects, ctrl-clicking, and
clicking on the backdrop).
I want feedback on what everyone likes and dislikes, but please give the new interface
some time before coming to your conclusions. At first it will definitely seem harder
than before because it's new and different. That's expected. But if you feel
that any of the changes still suck after a few hours of use, let me know and I'll change
them.
- "Map Edit Mode" no longer exists. You can now move, delete, reposition,
copy, and paste existing brushes at any time, without going into map edit mode. The
brushes you modify are updated in the wireframe views only (including the 3d wireframe
view). You still need to rebuild the map before you can see the changes in the
textured and polygon views. So, the benefit is that you can more easily deal with
existing brushes in maps, for example copying brushes to and from them.
- The "Map Edit Mode" toolbar no longer exists. All of the operations that
used to be on this toolbar are now available by right-clicking on a brush, for example
copy-to-brush, to-first, to-last, etc.
- I eliminated many of the editor tools in the toolbar and moved them to the menu you get
when you right-click on an actor or brush, for example resetting a brush's position.
- You now add actors by right-clicking on a 2D view or 3D surface and picking the
"Add actor" option.
- I eliminated a lot of the editor modes, in cases where they were no longer required.
For example, you can now select actors, select surfaces, add actors, move actors,
and move brushes in all of the editor modes, so I eliminated the add-actors and
move-actors modes.
- Actors and brushes can now be selected and moved together, including rotating them about
a common pivot point.
- Actors and brushes can be copied (Edit/Copy and Edit/Paste or Ctrl-C/Ctrl-X) and pasted
(Edit/Paste or Ctrl-V).
- New light effects: LE_NonIncidenceLight, great for creating glowing balls of light and
projectiles; LE_Shell for creating shells and rings of light.
- New sky support using the SkyZoneInfo actor class, and the "Fake Backdrop"
surface tag.
- You can make reflective textured surfaces like marble by combining
"Translucent" and "Mirror".
- You can now move the pivot point for the selected brush to any point in the world (not
only a brush vertex) by right-clicking on the 2d backdrop.
Special mouse clicking combinations
- A + right mouse click: Add actor there.
- L + right mouse click: Add light there.
Shortcut keys
- Delete: Delete selected actors.
- 1, 2, 3: Slow, medium, and fast movement speed.
- F1: Help.
- F4: Actor properties.
- F5: Surface properties.
- F6: Level properties.
- F7: Compile changed scripts.
- F8: Rebuilder.
- B: Toggle brush visibility in the current viewport.
- H: Toggle actor visibility in the current viewport.
- P: Toggle player controls or realtime update of the viewport.
- Shift-A: Select all actors.
- Shift-B: Select all surfaces belonging to the selected surfaces' brushes.
- Shift-C: Select adjacent coplanar polygons.
- Shift-D: Duplicate selected actors.
- Shift-F: Select adjacent floors.
- Shift-G: Select surfaces belonging to the selected surfaces' groups.
- Shift-I: Select surfaces with items matching the selected surfaces' items.
- Shift-J: Select all adjacent surfaces(flood-fill).
- Shift-L: Look ahead in the current viewport (no pitch or roll).
- Shift-M: Memorize selected surfaces.
- Shift-N: Select none.
- Shift-O: Select surfaces from intersection of selected surfaces and memory.
- Shift-P: Select all surfaces.
- Shift-Q: Reverse the set of selected surfaces.
- Shift-R: Recall memorized surface selection.
- Shift-T: Select all surfaces which use the current texture.
- Shift-U: Select union of selected surfaces and memorized surfaces.
- Shift-W: Select adjacent wall surfaces (flood-fill).
- Shift-X: Select exclusive or of selected surfaces and memorized surfaces.
- Shift-Y: Select adjacent slanted surfaces.
- Shift-Z: Select none.
- Ctrl-A: Add brush to world.
- Ctrl-B: Load brush.
- Ctrl-C: Copy.
- Ctrl-D: Deintersect brush with world.
- Ctrl-E: Save as.
- Ctrl-L: Save level.
- Ctrl-O: Load level.
- Ctrl-P: Play level.
- Ctrl-N: Intersect brush with world.
- Ctrl-R: Redo.
- Ctrl-S: Subtract brush from world.
- Ctrl-V: Paste.
- Ctrl-W: Duplicate.
- Ctrl-X: Cut.
- Ctrl-Z: Undo.