Hosting and domain costs until October 2024 have been generously sponsored by dumptruck_ds. Thank you!

Editing Getting Started Mapping

From Quake Wiki

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 18: Line 18:
 
There are 2 types of entities: Brush entities and Point entities. Brush entities are things like doors, platforms, and trigger volumes; they are any functional object which need brush geometry tied to them to do their job. Point entities are things like weapons, monsters, and lights; they are all objects which are just simply dropped into place (at a point) in the world.
 
There are 2 types of entities: Brush entities and Point entities. Brush entities are things like doors, platforms, and trigger volumes; they are any functional object which need brush geometry tied to them to do their job. Point entities are things like weapons, monsters, and lights; they are all objects which are just simply dropped into place (at a point) in the world.
  
Entities of both types have various properties that can be edited by the designer to modify specified effects on the entity. Each property is a combination of a 'key', which is the name of the properties, and it's 'value'. As an example, light entities have a key called 'light', and its value is set to whatever brightness you want the light to be.
+
Entities of both types have various properties that can be edited by the designer to modify specified effects on the entity. Each property is a combination of a 'key', which is the name of the properties, and it's 'value'. As an example, light entities have a key called 'light', and it's value is set to whatever brightness you want the light to be.
  
 
==Textures Wads and Compilers==
 
==Textures Wads and Compilers==
Line 43: Line 43:
 
==Some setup==
 
==Some setup==
 
[[File:map_tutorial_1.png|thumb|Trenchbroom]]
 
[[File:map_tutorial_1.png|thumb|Trenchbroom]]
When you first open Trenchbroom, you should have something much like the image on the right, but before we dive into some editing, there's a couple of things to set up. First, you likely won't see the little [[Quakeguy]] models, or any of the entity models, in the lower right section of your Trenchbroom in the Entity Browser. To fix this, go to '''View>Preferences...''' and set your Quake Path to where your Quake is installed (ex: C:\Quake\). Once you've set this, Trenchbroom will remember it for all future maps you make. Other settings here include OpenGL display settings, and Mouse sensitivity and axis inverting if you wish to modify these.
+
When you first open Trenchbroom, you should have something much like the image on the right, but before we dive into some editing, there's a couple things to set up. First, you likely won't see the little [[Quakeguy]] models, or any of the entity models, in the lower right section of your Trenchbroom in the Entity Browser. To fix this, go to '''View>Preferences...''' and set your Quake Path to where your Quake is installed (ex: C:\Quake\). Once you've set this, Trenchbroom will remember it for all future maps you make. Other settings here include OpenGL display settings, and Mouse sensitivity and axis inverting if you wish to modify these.
  
 
Next, we need to let Trenchbroom know which textures we want to use for this map. Go to '''Edit>Map Properties...''' and in the lower half of this dialog, you'll see the empty list of Texture Wads. Click on the '''+''' button, and browse to the '''Q.wad''' you downloaded earlier. You will be asked how you would like to store the path, leave the default 'Absolute' selected, and click Ok. Close out of the Map Properties dialog, and click on the '''Face tab''' in the upper right of Trenchbroom. You should now see all the Quake textures loaded in the lower right browser. Every time you create a new map, you will need to follow these steps to choose which texture wad you'd like to use.
 
Next, we need to let Trenchbroom know which textures we want to use for this map. Go to '''Edit>Map Properties...''' and in the lower half of this dialog, you'll see the empty list of Texture Wads. Click on the '''+''' button, and browse to the '''Q.wad''' you downloaded earlier. You will be asked how you would like to store the path, leave the default 'Absolute' selected, and click Ok. Close out of the Map Properties dialog, and click on the '''Face tab''' in the upper right of Trenchbroom. You should now see all the Quake textures loaded in the lower right browser. Every time you create a new map, you will need to follow these steps to choose which texture wad you'd like to use.
Line 59: Line 59:
 
Our floor is a little small, let's make it a bit larger, and also familiarize ourselves with the 3D view a bit. To '''look around''' in the 3D view, '''Right Click and Hold''' in the 3D view while dragging your mouse. To '''pan''' left/right up/down, '''Middle Click and Hold''' in the 3D view. You can also '''orbit''' the camera by pressing '''Alt-Right Click and Hold'''.
 
Our floor is a little small, let's make it a bit larger, and also familiarize ourselves with the 3D view a bit. To '''look around''' in the 3D view, '''Right Click and Hold''' in the 3D view while dragging your mouse. To '''pan''' left/right up/down, '''Middle Click and Hold''' in the 3D view. You can also '''orbit''' the camera by pressing '''Alt-Right Click and Hold'''.
  
Now, let's resize our floor brush. To do this, the brush must be selected, so reselect it if it is not or you only have some of it's faces selected. Now, '''Hold down Shift''' to enter face dragging mode and display the brush's dimensions. You will notice as you mouse over different parts of your brush, their edges will turn white, while continuing to '''Hold down Shift''', you may '''Left Click and Drag''' a white face. Let's make our floor 256x256 wide and 16 units tall. You will notice that when resizing, you are constrained to 16 unit increments. You can change the '''Grid Size''' with '''Ctrl--''' and '''Ctrl-+''', which will decrease or increase the grid by a power of 2, though it is recommended to stick to 16 units for this tutorial.
+
Now, let's resize our floor brush. To do this, the brush must be selected, so reselect it if it is not or you only have some of it's faces selected. Now, '''Hold down Shift''' to enter face dragging mode and display the brush's dimensions. You will notice as you mouse over different parts of your brush, their edges will turn white, while continuing to '''Hold down Shift''', you may '''Left Click and Drag''' a white face. Let's make our floor 256x256 wide and 16 units tall. You will notice that your resizing that you are constrained to 16 unit increments. You can change the '''Grid Size''' with '''Ctrl--''' and '''Ctrl-+''', which will decrease or increase the grid by a power of 2, though it is recommended to stick to 16 units for this tutorial.
 +
 
 +
 
  
 
==A new brush==
 
==A new brush==
Line 69: Line 71:
 
==Even more brushes==
 
==Even more brushes==
 
[[File:map_tutorial_5.png|thumb|Duplication]]
 
[[File:map_tutorial_5.png|thumb|Duplication]]
Let's keep going with constructing our room. To make another wall, let's '''Duplicate''' the wall we already have by selecting it, and pressing '''Ctrl-D'''. Now position it on the opposite edge of our floor. Let's also make a ceiling, so select the floor, and duplicate it as well. Now, we need our brush to '''Move Vertically''', and for that, we '''Hold down Alt''' whilst moving our brush, notice your cursor changes to 2 arrows pointing up and down. Let's give this a nice ceiling texture, I am using ''city5_3''.
+
Let's keep going with constructing our room. To make another wall, let's '''Duplicate''' the wall we already have by selecting it, and pressing '''Ctrl-D'''. Now position it on the opposite edge of our floor. Let's also make a ceiling, so select the floor, and duplicate it as well. Now, we need our brush to '''Move Vertically''', and for that, we '''Hold down Alt''' before while our brush, notice your cursor changes to 2 arrows pointing up and down. Let's give this a nice ceiling texture, I am using ''city5_3''.
  
 
Although not pictured to the right, let's close up our room now. '''Select Multiple Brushes''' by '''Ctrl-Left Clicking''' them, and select both of our walls. Duplicate them, and let's rotate them. You can quickly '''Rotate 90° Horizontally''' by pressing '''Alt-Left Arrow''' and '''Alt-Right Arrow'''. You can also '''Rotate 90° Vertically''' by pressing '''Alt-Up Arrow''' and '''Alt-Down Arrow'''. You can also '''Flip Horizontally''' with '''Ctrl-F''' and '''Flip Vertically''' with '''Ctrl-Alt-F'''.  
 
Although not pictured to the right, let's close up our room now. '''Select Multiple Brushes''' by '''Ctrl-Left Clicking''' them, and select both of our walls. Duplicate them, and let's rotate them. You can quickly '''Rotate 90° Horizontally''' by pressing '''Alt-Left Arrow''' and '''Alt-Right Arrow'''. You can also '''Rotate 90° Vertically''' by pressing '''Alt-Up Arrow''' and '''Alt-Down Arrow'''. You can also '''Flip Horizontally''' with '''Ctrl-F''' and '''Flip Vertically''' with '''Ctrl-Alt-F'''.  
  
 
Again, make sure all of our brushes have their edges aligned so our room is sealed. For our simple room this is not the end of the world if they are not, but it is good habit to get started with and will be required on larger, more complex maps to ensure they do not [[leak]]. Leaks occur when your brushes don't form a complete seal around the playable world, and prevent the compiling process Vis from running.
 
Again, make sure all of our brushes have their edges aligned so our room is sealed. For our simple room this is not the end of the world if they are not, but it is good habit to get started with and will be required on larger, more complex maps to ensure they do not [[leak]]. Leaks occur when your brushes don't form a complete seal around the playable world, and prevent the compiling process Vis from running.
 +
 +
  
 
==Add some functionality==
 
==Add some functionality==
Line 101: Line 105:
 
Now it's time to use Necros' CompilingGUI, as pictured below. Let's make sure this are set up properly before we begin.
 
Now it's time to use Necros' CompilingGUI, as pictured below. Let's make sure this are set up properly before we begin.
 
[[File:compile_gui.png|thumb|center|upright=2.5]]
 
[[File:compile_gui.png|thumb|center|upright=2.5]]
In '''Settings>Folder Setup''', we need to point the program at the location of our tools folder, which is the directory on your computer where you places the TyrUtils compilers you downloaded earlier. Ensure that the .exe file names of each of the compilers is correct (do not worry about skip.exe, we will not be using it). For now, we do not need to set any Command-line Arguments.  
+
In '''Settings>Preferences''', we need to point the program at the location of our tools folder, which is the directory on your computer where you places the TyrUtils compilers you downloaded earlier. Ensure that the .exe file names of each of the compilers is correct (do not worry about skip.exe, we will not be using it). For now, we do not need to set any Command-line Arguments.  
  
 
Working Folder should be set to where you save your .map files. Output Folder needs to be set to Quake's '''\id1\maps\''' directory where it searches for levels, such as '''C:\Quake\id1\maps\'''. You may need to create this directory if you do not already have it. When mapping for mods, such as [[Quoth]], this directory will be '''\quoth\maps\''' instead. Exit Preferences once this is all complete.
 
Working Folder should be set to where you save your .map files. Output Folder needs to be set to Quake's '''\id1\maps\''' directory where it searches for levels, such as '''C:\Quake\id1\maps\'''. You may need to create this directory if you do not already have it. When mapping for mods, such as [[Quoth]], this directory will be '''\quoth\maps\''' instead. Exit Preferences once this is all complete.
  
In the main dialog of the GUI, we need to set a couple of more things. First is the '''Source Map''', which is the .map file we just created. We also need to set the '''Quake Engine''' we are using. This will be an executable inside your Quake directory, such as "GLQuake.exe" or "Quakespasm.exe" or "Darkplaces.exe". If you require any Command-line Arguments when running Quake, or if you are mapping for a mod (ex: "-hipnotic -game quoth" when making a map for the Quoth mod), place them in the line provided.
+
In the main dialog of the GUI, we need to set a couple more things. First is the '''Source Map''', which is the .map file we just created. We also need to set the '''Quake Engine''' we are using. This will be an executable inside your Quake directory, such as "GLQuake.exe" or "Quakespasm.exe" or "Darkplaces.exe". If you require any Command-line Arguments when running Quake, or if you are mapping for a mod (ex: "-hipnotic -game quoth" when making a map for the Quoth mod), place them in the line provided.
  
 
==QBSP==
 
==QBSP==
Line 121: Line 125:
 
Once you're done examining our full-bright room, exit Quake and let's get some light working. Back in our compiling GUI, uncheck the box next to the word "QBSP", and check the box next to the word "LIGHT". Compile again, and once back in Quake, our map is now nicely shadowed!  
 
Once you're done examining our full-bright room, exit Quake and let's get some light working. Back in our compiling GUI, uncheck the box next to the word "QBSP", and check the box next to the word "LIGHT". Compile again, and once back in Quake, our map is now nicely shadowed!  
  
General lighting in Quake is not dynamic, but is calculated by our light compiler into what are known as "lightmaps", which are stored in our .bsp file. By default, all lights have a linear falloff, but more modern light compilers (such as the light compiler provided in TyrUtils) have functionality to support other falloffs. Light, especially with some of it's command-line arguments for improving details, on more complex maps can often take awhile to complete, so often when testing small changes to your map like a couple of new monsters, you may not bother running it. This may be obvious, but if you have no light entities in your map and run light, your map will be fully dark.
+
General lighting in Quake is not dynamic, but is calculated by our light compiler into what are known as "lightmaps", which are stored in our .bsp file. By default, all lights have a linear falloff, but more modern light compilers (such as the light compiler provided in TyrUtils) have functionality to support other falloffs. Light, especially with some of it's command-line arguments for improving details, on more complex maps can often take awhile to complete, so often when testing small changes to your map like a couple new monsters, you may not bother running it. This may be obvious, but if you have no light entities in your map and run light, your map will be fully dark.
  
 
See [[Light (map compiling)]] for more information and common command-line arguments.
 
See [[Light (map compiling)]] for more information and common command-line arguments.

Please note that all contributions to Quake Wiki are considered to be released under the GNU Free Documentation License 1.3 or later (see Quake Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel | Editing help (opens in new window)