home *** CD-ROM | disk | FTP | other *** search
/ CD Action 6 A / cdactioncoverdisc / quakemap / editor.txt < prev    next >
Text File  |  1996-10-07  |  18KB  |  359 lines

  1.                       ---===  QUAKEMAP  ===---        for Windows 95
  2.  
  3. Version 2.0  (beta 4)
  4.  
  5. This is the documentation for the QuakeMap Editor only.
  6. See EXPLORER.TXT for documentation about the QuakeMap Explorer.
  7.  
  8. QuakeMap Editor is a basic level editor for the game Quake from id
  9. Software. It provides for full 3D editing of .map files, allowing
  10. you to build levels by using polyhedrons with any number of sides
  11. with any angle: you are not restricted to cubes.
  12.  
  13.  
  14. What's new (non-exhaustive list) :
  15. - Entities now displayed with a cross on the map.
  16. - Entity list is now hierarchical.  Entities can be arranged by
  17.   groups.
  18. - Grouping of brushes.
  19. - Clipboard operations (copy, cut and paste).
  20. - Brush rotation and scaling.
  21. - Streamlined interface with new buttons.
  22. - Brush substraction.
  23. - Unlimited UNDO/REDO.
  24.  
  25.  
  26.  * Introduction *
  27.  
  28. The screen you see when you first open Quake Map is this Quake
  29. Map Explorer.  If you open a .qme file, the left portion of the
  30. screen will display the items (such as text descriptions,
  31. patches, etc.) that are included.  From here, you can open the
  32. map to work on the level.  You can also directly open a .map file
  33. and work on it.
  34.  
  35. When you open a map, you see the QuakeMap Editor. The main screen 
  36. is divided into 3 regions. The two regions at the right shows you
  37. the level you are currently editing. The bottom window has a yellow
  38. background and is a top view of the level.The top region, which is
  39. green, is a front view (this "side" view can be rotated throughout
  40. 360 degrees, not limiting you to just XY or XZ views). The
  41. level is drawn in wireframe. The left region shows you various
  42. parameters, such as the view scale, the grid, some editing
  43. icons, the compass, and the currently selected object.
  44.  
  45. To understand basic Quake editing principles, open an already
  46. existing .map or .qme file, like the included sample Test.qme.
  47. Use the "file" menu to open the desired map. Note that the file
  48. Models.qme is used internally by QuakeMap, to hold, among other,
  49. the list of standard entities, and contains no real map itself.
  50.  
  51. To play a level, choose "GO!" in the "Quake" menu. There are other
  52. options, but the first one is a summary of the next ones : it extracts
  53. the necessary textures in a wad file, launches QBSP and then Quake.
  54. You will be asked where the QBSP/VIS/LIGHT utilities are on your hard
  55. disk.
  56.  
  57. As long as no object (entity or polyhedron) is selected, the bottom
  58. left region of the screen lists all of the entities of the map. An
  59. entity is either a particular Quake item, enemy, light spot, etc, or a
  60. solid object like a door, a switch, or the map itself. The former
  61. are shown beside a sphere, and the latter are shown beside a cube.
  62. Independant entities are associated with a particular spot in the
  63. level, which is the starting point of the item or monster. These
  64. entities are shown on the map as a cross, or +.  If you click on
  65. one of these entities, the spot will be shown on both views
  66. of the map as a sphere. You can drag it elsewhere with the mouse.
  67. Moveable entities, i.e. those associated with solid objects like
  68. doors and platforms, are not associated with a starting point, but
  69. with some of the polyhedrons that constitute the level ("brushes").
  70. If you click on one of these entities, the corresponding polyhedrons
  71. will be highlighted. The first entity in a Quake level is always
  72. "worldspawn", and it owns all the polyhedrons of the level except
  73. the ones owned by doors and buttons.
  74.  
  75. The entities may be organized in a hierarchical design, to help you
  76. work on the level. You can group polyhedrons and/or entities together.
  77. These are called "groups" and are displayed with a "cube in a folder"
  78. icon. Groups do not correspond to anything for Quake; they are only
  79. useful for you while you are making your maps.
  80.  
  81. Although some effort will be made here to educate the user on Quake
  82. editing, that is not the real purpose.  For current information
  83. regarding the types of entities, and the variables associated with
  84. them, please refer to a site such as Quake Map Specifications,
  85. http://www.infi.net/~nichd/qmapspec.html.  In addition, you may want
  86. to look at the maps included in sqeam.zip and qtricks.zip at
  87. ftp.cdrom.com for some examples to learn by.
  88.  
  89.  
  90.   * Working with polyhedrons *
  91.  
  92. Here lies the real "basics" of creating a Quake level.  Before your
  93. level can be populated with monsters, weapons and powerups, there has
  94. to be a "world" for these items to exist in.  In id's terms, these
  95. polyhedrons, coupled with textures make a "brush".  Throughout this
  96. document, these terms may be used interchangably.
  97.  
  98.  
  99.   -= Basics =-
  100.  
  101. In .map files, polyhedrons are represented by the definition of each
  102. of their sides. Apart from the texture, a side is only defined by the
  103. plane in which it lies. This program uses the same concept. This mean
  104. you cannot manipulate vertexes of the polyhedrons, but only sides, or
  105. more exactly only the planes which define the sides. Only convex
  106. polyhedrons are allowed and the whole polyhedron is determined by the
  107. set of planes. You work by moving, resizing or rotating these planes,
  108. and the program will compute the new vertexes and display the
  109. resulting polyhedron.
  110.  
  111. A convex polyhedron is any multisided object, that does
  112. not have any sides that fold toward itself.  The easiest way to
  113. understand this is with a simple test.   If you draw a straight line
  114. through a convex polyhedron, regardless of the angle or position of
  115. the polyhedron, the line will only enter once, and exit once. 
  116.  
  117. To select a polyhedron, first click on the green side view at the
  118. desired polyhedron's height. This set a red reference line across the
  119. width of the view window. Next click on the yellow top view inside the
  120. desired polyhedron. This click is converted into a 3D position: the
  121. X and Y coordinates are those of the point where you clicked in the top
  122. view, and the Z coordinate is the coordinate of the red reference line
  123. in the side view. If this leads to a 3D point which is inside of an
  124. existing polyhedron, then the polyhedron is selected and shown darker.
  125. Once a polyhedron is selected, in addition to changing to a darker
  126. color, a black handle is displayed in the center of the polyhedron,
  127. and white handles are shown at the center of each face.
  128.  
  129. IMPORTANT: by clicking with the right mouse button on either an entity
  130. in the entity list or on a polyhedron or on one of the handles, you
  131. will bring up a context-sensitive menu. Not only are these right-button
  132. menus very useful, but they also sometimes contains commands that are
  133. not found in menus. So do not forget to right-click everywhere.
  134.  
  135. You can move a polyhedron by dragging the center black handle or by
  136. changing the "center" value in the information area at the left of
  137. the screen. This will not cause any distortion to the polyhedron.
  138. To change the polyhedrons shape, you have to select one particular
  139. side by clicking on one of the white handles. In addition to showing
  140. a white handle, you will see a normal vector and yellow lines from
  141. the handle to each vertex, defining the selected side. You can
  142. move the plane defining that side by dragging the handle. This
  143. will resize the polyhedron.  You can change the side's orientation
  144. and angle by clicking on the end (gray circle) of the white normal
  145. vector handle.  When a face of a polyhedron is selected, the side's
  146. texture name and parameters are shown in the information area at
  147. the left of the screen. For any side, you can choose any texture
  148. and any texture offsets, texture rotation angle, and texture scaling
  149. factors. You can also pick a texture from the texture browser;
  150. see below.
  151.  
  152. You can always cancel what you have done by using the UNDO function.
  153. It may be found either in the Edit menu, or by clicking on one of
  154. the buttons at the left of the screen. You can UNDO and REDO the last
  155. 25 (by default) operations you made.
  156.  
  157.  
  158.   -= Operations between polyhedrons =-
  159.  
  160. Adding a new side to a polyhedron allow you to have more than the
  161. default 6-sides to your polyhedron.  IMPORTANT: altought the old
  162. "split up this side" command is still available, I recommend not
  163. using it any more. Here are the easier, alternate ways. Let's start
  164. with this example. Let's say you have built a wall, and want to make
  165. a hole in it. To do this, you use "brush substraction". You create a
  166. cube, move it into the wall exactly where you want the hole to be,
  167. and "subtract" the cube from the wall. To do this, click on the wall,
  168. then hold down the Shift key and click on the cube. This operation
  169. starts a group-selection. More on this later. For now, just see how
  170. both the wall and the cube are selected. Then, choose "Substract" in
  171. the Edit menu. This will split up the wall into as many convex
  172. polyhedrons as required to make a wall with a hole. Don't forget to
  173. remove the cube you used as substracter.
  174.  
  175. Let's come now to how to add a new side to a polyhedron. The easier
  176. way is to pick up another polyhedron, move it over the previous one,
  177. and do brush substraction. For example, if you want to cut one corner
  178. of a cube, you will do this :
  179.  
  180.        +-----+/\
  181.      A |     |  \
  182.        |    /|   \           +-----+
  183.        +-----+   /           |     +  resulting A
  184.           /     /            |    /
  185.           \    /  B          +---+
  186.            \  /
  187.             \/
  188.  
  189. Substracting polyhedron B from polyhedron A will leave polyhedron A
  190. with one more side, as shown at the right.
  191.  
  192. You can also cut a polyhedron in two parts along a plane. This gives
  193. you another way to do some operations like cutting just a corner
  194. off of a cube, separating a wall in two parts for assigning them
  195. different textures, etc.
  196.  
  197. To cut a polyhedron, you have to choose the plane you'll use as the
  198. separation plane first. To do so, select a side of another
  199. polyhedron and choose "tag this side" by right-clicking on its
  200. handle. Then, select the polyhedron to cut and choose "Cut along
  201. plane" in the menu or in the context-menu. With the example above,
  202. you would select polyhedron B, right-click on the handle of the side
  203. that goes through polyhedron A, and choose "Tag this side"; the
  204. tagged handle is shown as a red square. Then, right-click on
  205. polyhedron A a choose "Cut along plane".
  206.  
  207.  
  208.   -= Other operations =-
  209.  
  210. Additional functions can be done through the use of the Tool Palette.
  211. You can start the Tool Palette by clicking on the icon on the left
  212. side of the screen.  This will provide you a selection of tools for
  213. moving, resizing and rotating brushes.
  214.  
  215. Brush rotation is very simple.   With the desired brush selected,
  216. just click on the appropriate rotation direction button.  The
  217. default rotation increment is 15 degrees, but you may change the
  218. rotation increment setting for all three axis. 
  219.  
  220. Once you have created a few brushes that form a single object, such
  221. as stairs, a well, an arch, etc., you can select multiple brushes to
  222. work with by clicking on each desired polyhedron while holding
  223. either the shift or ctrl key.  This group will be displayed on screen
  224. as highlighted with a dashed line in both map views and given the
  225. temporary group name of "(selection)".  If you wish to save this
  226. grouping, simply change the name from "(selection)" to your name
  227. of choice.  This will save your group information in .qme files. 
  228. Keep in mind, if you save or export your map into .map format, group
  229. information WILL NOT be saved.
  230.  
  231. The use of the clipboard for cut, copy and paste operations can make
  232. duplication of repetitive objects (pillars, arches, etc.) much easier.
  233. These operations can be done on entities, polyhedrons, or a group.
  234. To copy a brush or group, after selecting the desired items, press
  235. ctrl-c.  If you want to cut, then press ctrl-x.  Both of these actions
  236. places the selected information onto the Windows clipboard.  To paste
  237. This information, center the two map views on where you want the items
  238. placed, then press ctrl-v.  This can be very handy for making stairs,
  239. for example.  After creating your first step, click once or twice on
  240. the scroll bar arrows to offset in the appropriate direction, and
  241. paste.  This method makes for very consistant spacing on stairs,
  242. pillars, etc.
  243.  
  244. Although Quake Map does not support multiple maps open at one time, you
  245. can still cut and paste between maps.  Simply select the items to copy
  246. and press ctrl-c.  Then open the destination map, and press ctrl-v to
  247. paste.  This is possible since the operation uses the Windows clipboard.
  248.  
  249.  
  250.   -= Textures =-
  251.  
  252. Using textures has been made easier than ever.  You no longer need to
  253. have a texture .wad file to hold your textures.  The first time you
  254. access the texture list, Quake Map will ask you to specify where
  255. Quake resides on your hard drive.  It will then directly access the
  256. textures from within Quake's .pak files.  The texture browser has also
  257. been improved to allow you to view multiple textures at one time.
  258. These textures are grouped by type, for easier use.  In the future,
  259. you will also be able to work with user-specific texture wads.
  260.  
  261. To directly apply a texture from the texture browser to the side of a
  262. polyhedron, right-click on the handle of the side, and choose
  263. "Texture..." in the context-menu, or click on the small "..." button
  264. near the Texture Edit box. You can also click on one of the buttons at
  265. the left of the screen. The Textures dialog box appears, and if you
  266. select a texture by double-clicking on it, will be applied to the
  267. selected side. Note that you can also apply a texture to a whole
  268. polyhedron; this assigns the same texture to each of its sides. You can
  269. even apply a texture to a whole group, or even to "worldspawn" itself,
  270. but be careful ! This replaces every texture in the group by the choosen
  271. texture. Anyway, don't forget that you can always UNDO a wrong
  272. operation.
  273.  
  274.  
  275.   * Working with entities *
  276.  
  277. If you double-click on one of the entities in the list, you'll be
  278. shown the list of parameters associated with this entity. Parameters
  279. are pairs of Spec-Arg: a Specific is a parameter name, and an
  280. Argument is this parameter's value. Double-click on a Specific to
  281. edit the associated Arg's value. For example, every entity must have
  282. a "classname" Specific, whose Argument specifies the type of entity,
  283. like "light" or "weapon_rocketlauncher"; and most entities have an
  284. "origin" Specific, whose Arg specifies the coordinates of the
  285. starting point or location of the entity. This is the Specific which
  286. is used to show the cross on the map.  If you move the cross, it
  287. will modify the associated Arg. 
  288.  
  289. Some entities may have Specifics whose meaning depends on the
  290. classname. For example, lights can have a "light" Specific, whose Arg
  291. specifies the light power. For more information about which Specifics
  292. are meaningful with which classnames, look for other sources, like
  293. the QuakeSpecs (see QMAP20.TXT). Parts of these informations may also
  294. be included in future versions of QuakeMap.
  295.  
  296.  
  297.   -= Groups =-
  298.  
  299. A group is a particular item in the hierarchical list that is used to
  300. hold other entities. If you select several polyhedrons and/or entities,
  301. by holding down the Ctrl or the Shift key while clicking on them, you
  302. will create a temporary "(selection)" group. If you rename this group
  303. to something else, you will create a non-temporary group. Such a group
  304. is only used to hold other entities, unlike "brush items" like doors
  305. and lifts. Doors and lifts are made of an entity containing moving
  306. polyhedrons, so they are "groups" in the sense that they can contain
  307. sub-items. Every polyhedron owner by a door of lift entity is
  308. considered to be part of the door or the lift, and will move with it.
  309. Note that you may also use doors and lifts entities like true groups
  310. and put other entities or sub-groups into them, as well as polyhedrons.
  311.  
  312. You can move entities, polyhedrons and even sub-groups into or outside
  313. groups by dragging their icon in the entity list. This should be
  314. intuitive enough. The only delicate point is that polyhedrons are not
  315. represented by icons in this list, so they can't be dragged like
  316. entities and sub-groups. You need to either click on the "group" button
  317. or use the Shift key to select the polyhedron(s) as "(selection)". When
  318. this is done, you have something to drag elsewhere : the (selection)
  319. group itself.
  320.  
  321. When you create a new polyhedron or a new entity, it is created as
  322. sub-item of the currently selected group. That is, you have two ways to
  323. associate polyhedrons with doors or lifts, i.e. to build doors and
  324. lifts : either you click on the icon of the said door and then choose
  325. the "new" button, which will create the new polyhedron directly
  326. associated with the door; or, to change associations later, you first
  327. have to select the polyhedron(s) in a "multi-selection" manner. This
  328. would lead to a "(selection)" temporary group in the hierarchical list.
  329. From there, you simply drag the icon "(selection)" and drop it onto the
  330. door icon.
  331.  
  332. By clicking on the icon of group, all the associated polyhedrons and
  333. entities are shown highlighter, which is a good way to check which
  334. polyhedrons are in with which groups. You can also know where a
  335. particular polyhedron is by clicking on it and looking what "Owner by"
  336. says.
  337.  
  338.  
  339.  * Conclusion *
  340.  
  341. This documentation could be much longer, but I prefer stopping here !
  342. Discover by yourself everything that QuakeMap allows. And don't forget
  343. to have a look at the QuakeMap Explorer, in file EXPLORER.TXT !
  344.  
  345.  
  346. Thanks to Mike Melzer who wrote and updated many parts of this
  347. documentation.
  348.  
  349.  
  350. NO WARRANTIES, either expressed or implied. This software is
  351. provided "as is". Use at your own risk. The author cannot be held
  352. responsible for any damage caused to your computer or its data.
  353. Quake and all associated logo's and textures are the property of
  354. id Software.
  355.  
  356.  
  357. Author : Armin Rigo, armin.rigo@p22.gnothi.fn.alphanet.ch
  358. Comments/bug reports are welcome and encouraged.
  359.