Tutorials by Bob Lawrence
World Editor Tutorial
Presentation of GEdit
1 is an introduction of the World Editor, GEdit, and describe its basic use
and features. For the tutorials, go directly to the Chapters 2 to 13 by clicking
1. Presentation of GEdit
When you start GEdit,
the screen should looks like this:
The center of the window is called The Work Space (or the 4 views). The top of the window contains The Menus and The Bars. The right side of the window, The Command Panel, shows 6 panels.
1.1 The work space (views)
The Work Space is made of 4 windows showing respectively the Camera's view, the Top view, the Front view and the Side view.
1.1.1 The Camera's view1.2 The Menus
The Camera's view shows the 3D world you're building. You can switch between the Textured View and the 3D Wireframe View in the View Menu. You can navigate inside while in Camera Mode by holding down the left mouse button and moving it around. In the same way, you can look around by holding the right mouse button. By left-clicking an object in the Camera's view when in Select Mode, you can select its brush while in Brush Mode or one of its face while in Face Mode.
1.1.2 The Top, Front and Side views
These views display your map in 2D as follow:
The Top view shows your map in XZ axis, the Front view shows it in YZ axis and the Side view in XY axis. While in Camera Mode you can scroll your map by holding the left mouse button and moving it around, and zoom in and out by holding the right mouse button and moving the mouse up and down. The other solution to zoom is to select the view you want to zoom in or out and press the + or - key on the numeric key pad of your keyboard. While in Select Mode, you can select any object by left-clicking on it or select a group of object by holding the left mouse button and drag the mouse cursor to frame all the objects you want to select. You can also select several objects one by one by holding the Control key and left-clicking on them.1.2.1 File
In the File menu, you can create a New file, Open an existing file, Close the currently opened file, Save it under its current name, Save As under another name, Import an existing .3DT file in your current file (useful to import "Prefabs"), reopen the last 4 files you worked on or Exit GEdit.
In the Edit menu, you can Delete the current selected object, or group of objects, in your map, Select All or Deselect All the objects of your map. With a huge map containing a lot of objects, doing a Select All can be a very heavy operation.
In the View menu, you can show or hide the Tool bar, Mode bar, Group bar, Command Panel and Status bar. You can choose to view your world inside the Camera's view in 3D Wireframe or Textured modes. You can change the currently selected 2D view in Top, Front and Side views. You can zoom in and out inside the 2D views. You can also show only the Current Group, the Visible Brush Groups or All Brushes, and show or hide Clip, Hint and Detail Brushes.
This is where you can switch between Camera Mode, Select Mode and Template Mode; Move/Rotate, Scale or Shear; Face Adjustment or Brush Adjustment.
Here, you can make an object Snap To Grid when you Move/Rotate or Scale it and you can set the Grid Snap and the Rotation Snap Degrees in the Grid Settings window. The Auto Rebuild BSP rebuild and texture the Camera view every time you modify your map. On huge maps, you can turn it off while working to avoid GEdit to recalculate a huge BSP structure every time you modify the map. This can be a very heavy process. Preferences show a window where you can set the color for the Grid Background, the Grid itself and the Snap Grid. In the Level Options window, you can select the Texture Library you're currently using and define the Headers Directory paths where your entity headers files are located.
In the Tools menu, you can create a New Brush like an Arch, Cone, Cube, Cylinder, Spheroid and Staircase when in Template Mode. You can set the Brush and Face attributes and rotate the selected brush 90 degree. The Brush and Face Attributes dialogs look like this:
The brush type Solid is a piece of geometry you can collide with. They're used to build rooms, doors, elevators, furniture... etc. Clip brushes are the same but invisible, so you can use them to block the player or to forbid some part of your level. Empty brushes are translucent and non-blocking and are generally used for water, lava... etc (see Chapter 8 and 9). Window brushes are translucent and blocking. Hint brushes are invisible and non-blocking and they're used to help the engine to render efficiently the world (see Chapter 6). Cut brushes are used to cut a piece of a solid brush to make doors or windows frames, link 2 adjacent rooms,... etc (see Chapter 5). If Hollow is checked, it means that the brush contains an empty space (like a room. See Chapter 1.4.1). If not, the brush is a solid object like a door. Hull Thickness, for example, represents the thickness in Texels of the walls of a room when building a Hollow brush. Wavy make an Empty brush wave like moving water (see Chapter 8). Detail brushes are generally small brushes like furnitures and help the compiler to build the map more efficiently and the engine to render faster. Area are used to separate parts of the map, like a door, to help the engine to render faster (see Chapter 5). They are used on doors and must seal completely a room. Flocking seems to not work properly, so far. Sheet is like a 2D brush and is useful when making flat object like pictures on a wall. Water and Lava modify the gravity like if you were in a liquid and must be used with an Empty brush. In addition, Lava inflicts damages to actors.
In the Face Attributes, the Mirror makes the face(s) you selected reflecting like a mirror. You have also to check Transparent and set its Transparency Value (0=tranlucent, 255=opaque. 100 seem to be a correct value for a mirror). Sky set a face to behave like the sky defined in the Sky Panel (see 1.4.6). Texture Lock locks the position of the texture on the face. This is very useful when, for example, you texture a picture on a face (like a painting) and want to move the brush around. This way, you won't have to readjust the Texture Offset every time you move it. It looks like the Texture Lock is broken in G3D1.0 but it works in G3D1.1. Full Bright seems to not work at all. Gouraud and Flat are some methods to calculate the casting of the light on faces to render your scene faster. This is a lot less efficient and realistic but your level will run faster if you have some FPS rate problem. If you select Light and set its Intensity, the face itself will cast light. Use Texture Offset to position the texture on the face horizontally and vertically. In the same way, Draw Scale will rescale the texture on the face. Light Map Scale tunes the way the light and shadows are cast on the face. A low Light Map Scale will increase the contrast on the face but will slow down your level. Angle is used to rotate the texture in degrees. Flip Vert and Flip Horiz will flip the texture vertically and horizontally. Default reset all the attributes. If the texture uses a transparent color, you can set its level of transparency by checking Transparent and setting its Transparency Value as said above for Mirror.
Build Quick BSP refreshes the Camera View in Texture Mode. Compile opens the Compile Manager:
To build the level that your application will load and play, you need to compile your map (.3DT file) in a BSP format (.BSP). To do so, you need to build the BSP, Vis and Light, by setting different parameters. If you check Entities Only, the compiler will calculate only the entities on your level. This option is useful if you already compiled your map and just added or modified some entities to avoid recalculating everything. Suppress Hidden Brushes will avoid to calculate brushes which are not visible from any place in your level. Vis Detail Brushes will perform the Vis calculation on the Detail Brushes (see above). If the compilation takes too long or your level run too slow, and if you use Detail Brushes in your map, uncheck this option. BSP will calculate the BSP tree. Verbose and Entity Verbose will give you some feedback in the Console Panel while processing the BSP calculation. Vis pre-calculates the visibility of your map more or less efficiently according to the Full Vis check box. When Full Vis is on, your level will run faster but will take a lot longer to compile. Verbose displays some information while compiling in the Console Panel. In the Light Settings, Default Light Level will light uniformly your level, using the RGB color value you pass to it. To activate all your light entities, you have to check the Radiosity box. Extra Samples will give you a better lightning effect. Fast Patch accelerates the Radiosity calculation. Light Scale is a factor applied to all the light entities in your level. Reflect Scale affect the way the light is reflected in your level. Bounce Limit is the number of time the Radiosity calculation will bounce a ray of light. Lower this number to decrease the compiling time. Patch Size is the size of the grid used while calculating the Rasiosity. Lower the size will compile faster and use less memory. When you check Preview, your level will be loaded by GTest, so you can check it and move around.
Scale World will rescale your map by the factor you enter (0.5 is 2 times smaller). Texture Scale does the same for all the textures in your level. Add Template (or Enter key) adds the template you selected in the Template Panel while in Template Mode. See Chapter 13 for more details.
In the Group menu, you can create groups of brushes and entities or add them in an existing group.
You can decide to show or hide all the entities in your map with the option Show or selected the type of entities you want to be displayed with Visibility which open the Entities Visibility dialog box. In the Entity Editor, you can modify the properties of each entity present in your map, like the radius of each light, the action of a pathpoint, the sequence of the dynamic lights... etc.
In the Axis menu, you can lock the X, Y and Z axis in the Top, Front and Side views.
This is where you can switch between all the levels you loaded in GEdit.
Well... That's where you can get help without having to connect on this web page!
1.3 The Bars
The bars are sets of shortcut buttons of the most used options in the menus.
1.3.1 Tool Bar
New File, Open File and Save from the File Menu. Lock X, Lock Y and Lock Z from the Axis Menu. Snap to Grid and Grid Settings from the Options Menu. Entity Dialog and Show Entities from the Entity Menu. Build Quick BSP and Compile Manager from the Tools Menu.
1.3.2 Mode Bar
Camera Mode, Select Mode, Template Mode, Move/Rotate Brush, Scale Brush, Shear Brush, Face/Brush Attributes dialogs from the Mode Menu. Rotate Brush 45 degrees, Cut Brush and Center Brush/Entity in View.
1.3.3 Group Bar
Show All Groups, Visible Groups and Current Group. Add to Current Group, Remove from Group and the Group list.
1.3.4 Status Bar
Display a short contextual help, current Brush or Face Mode with the Entity name, current position of the cursor, Grid size in Texels and Snap to Grid setting in Texels.
1.4 The Command Panel
In the Template Panel, you can create a New Brush with the basic shapes like a Cube, Spheroid, Cylinder, Staircase, Arch or Cone. You can also add an Entity from the standard entity list. After selecting the Entity in the list, click on the light bulb button and press the Enter key to add it in the world.
On the selected brush or face, you can change its texture by selecting one in the list and click on the Apply button. When you create a brush, it will be textured with the last selected texture in the list.
In this panel, you can group your objects (brushes and entities) in different groups. Why is it interesting to modulate your map? Because on huge maps, you want to be able to work on a particular area without having the editor displaying all the rooms and entities which will obstruct the views. And believe me, on huge maps it can become pretty messy! So, you can Create or Delete groups and Add or Remove objects from the current Group that you can select by its Name. You can also Select one or several or even all the objects in the group. You can make the entire group visible and affect to each group its own color in your map.
This is where GEdit will output all the messages during the construction of the map or while it compiles it. All the errors during the compilation are reported here, helping you to debug your level easily.
In GEdit, Models are attached to Entities like doors and elevators to define their animation (see Chapter 5 and 6). To create a model, you have first to select the brush(es) it will affect. Click the Add Model button and give a model a name. You can also select an existing Model in the model list, Delete the current model, Select or Deselect the associated brush(es), Add and Remove Brushes, Clone the current model. To set a Model animation, you will use Key frames. Keyframes represent the position where the model will move in a given time. To add a Keyframe, click on Animate, move the bush(es) at the position you want it to go, enter the number of seconds it takes, from the first position, to reach this position and click OK. For all the other Keyframes, the time in seconds represent the time elapsed since the first position and not since the last one. (i.e. Key1=2, Key2=5, Key3=7 is a total of 7 seconds animation and not 14). You can also Delete or Edit each Keyframe. Chapter 5 and 6 are very good examples on how to use Models.
Sky is a box that surrounds your world. You can set each side of this box with a texture and make it rotate on an axis. This can make a very nice effect of a moving sky. You can tune the Rotation Speed and the Texture Scale. Chapter 11 is a good example on how to build a perfect blue summer sky.