home *** CD-ROM | disk | FTP | other *** search
/ Quaker's Paradise / Quakers_Paradise.iso / edit / quakemap / quakemap.doc < prev    next >
Encoding:
Text File  |  1997-06-20  |  7.0 KB  |  144 lines

  1.  
  2.                       ---===  QUAKEMAP  ===---
  3.  
  4. QuakeMap is a basic level editor for the game Quake from ID Software. 
  5. It provides full 3D edition of .map files, allowing you to build 
  6. levels by using polyhedrons with any number of sides with any leaning 
  7. : you are not restricted to cubes. It also lets you extract textures 
  8. from .bsp and .wad files and put them into .wad files, ready for the 
  9. nodebuilder. The QBSP, VIS and LIGHT utilities are required to 
  10. "nodebuild" maps.
  11.  
  12. Target Quake version : 0.91-0.92. It should work with more recent 
  13. versions, at least partially, but it has not been tested with these.
  14.  
  15.  
  16.  * Introduction *
  17.  
  18. The main screen is divided into 3 regions. The two regions at the 
  19. right shows you the levels you're currently editing. The bottom one, 
  20. yellow, is a top view of the level, and the top region, green, is a 
  21. front view. The level is drawn in wireframe. The left region shows 
  22. you various parameters, such as the view scale, the grid, the 
  23. compass, and the currently selected object.
  24.  
  25. To understand basic principles, open an already existing .map file, 
  26. like for example the included sample Watercub.map. Use the "file" 
  27. menu. Note that the file EmptyMap.map is here to be automatically 
  28. used as model when creating new maps, and the file Entities.map is 
  29. the list of standard entities, and contains no real map.
  30.  
  31. As long as no object is selected, the bottom left region of the 
  32. screen lists the entities of the map. An entity is either a 
  33. particular Quake item, enemy, light spot, etc, or a solid object like 
  34. a door, a button, or the map itself. The former are shown aside a 
  35. sphere, and the latter are shown aside a cube. The former are 
  36. associated with a particular spot in the level, which is the starting 
  37. point of the item or monster. If you click on one of these entities, 
  38. the spot will be shown on both views of the map. You can drag it 
  39. elsewhere with the mouse. The latter, i.e. the solid objects like 
  40. doors, are not associated with a starting point, but with some of the 
  41. polyhedrons that constitute the level ("brushes"). If you click on 
  42. one of these entities, the corresponding polyhedrons will be 
  43. highlighted. The first entity is always "worldspawn", and it owns all 
  44. the polyhedrons of the level except the ones owned by doors and 
  45. buttons.
  46.  
  47.  
  48.  * Working with entities *
  49.  
  50. If you double-click on one of the entities in the list, you'll be 
  51. shown the list of parameters associated with this entity. Parameters 
  52. are couples of Specific-Arg : a Specific is a parameter name, and an 
  53. Arg is this parameter's value. Double-click on a Specific to edit the 
  54. Arg's value. For example, every entity must have a "classname" 
  55. Specific, whose Arg specifies the type of entity, like "light" or 
  56. "weapon_rocketlauncher" ; and most entities have an "origin" 
  57. Specific, whose Arg specifies the coordinates of the starting point 
  58. of the entity. This is the Specific which is used to show the little 
  59. sphere on the map, showing you what these coordinates really means ; 
  60. and if you move around the little sphere, it modifies the associated 
  61. Arg.
  62.  
  63. Some entities may have other Specifics, whose meaning depends on the 
  64. classname. For example, lights can have a "light" Specific, whose Arg 
  65. specifies the light power. For more information about which Specifics 
  66. are meaningful with which classnames, look for other sources, like 
  67. the Quake Entities specs by Niklata and Thomas Winzig 
  68. (http://www.infi.net/~nichd/qentity.html). This is the document I 
  69. used in order to build the list of common entities that pops up when 
  70. you choose "New entity".
  71.  
  72.  
  73.  * Working with polyhedrons *
  74.  
  75. Let's come to the serious stuff. The heart of the program will be 
  76. discussed here.
  77.  
  78. In .map files, polyhedrons are represented by the definition of each 
  79. of their sides. Apart from texture, a side is only defined by the 
  80. plane in which it lies. My program uses the same concept. This mean 
  81. you cannot manipulate vertexes of the polyhedrons, but only sides, or 
  82. more exactly only the planes which define the sides. As only convex 
  83. polyhedrons are allowed, the whole polyhedron is determined by the 
  84. set of planes. You work by moving or rotating these planes, and the 
  85. program will by itself compute the new vertexes and display the 
  86. resulting polyhedron.
  87.  
  88. To select a polyhedron, first click on the green front view at the 
  89. polyhedronÆs height. This will move the red line. Then click on the 
  90. yellow view into the polyhedron. A click in the yellow view is 
  91. converted into a 3D position : the X and Y coordinates are these of 
  92. the point where you clicked, and the Z coordinate is the red line's Z 
  93. coordinate. If this leads to a 3D points which is inside a 
  94. polyhedron, then the polyhedron is selected and shown darker.
  95.  
  96. You can move a polyhedron by dragging the little black handle or by 
  97. changing the "center" value at the left. This will not cause any 
  98. distortion to the polyhedron. To do so, you have to select one 
  99. particular side by clicking on one of the other handles. Each of 
  100. these handles is the center of a side. The selected side is shown 
  101. with a white handle, a normal vector, and yellow lines from the 
  102. handle to each vertex. You can move the plane containing the side by 
  103. dragging the handle. You can change the side's orientation and 
  104. leaning by dragging around the normal vector's handle (gray circle). 
  105. The selected side's texture name and parameters are shown at the 
  106. left. For any side, you can choose any texture and any texture 
  107. offsets, texture rotation angle, and texture scaling factors.
  108.  
  109. Adding a new side to a polyhedron is probably one of the most 
  110. difficult operation. First, select an existing side and choose "split 
  111. up this side". This will split up the side into as many triangles as 
  112. the original side had vertexes. Then, if you didn't want so many 
  113. sides, delete some triangles. Finally, move and rotate triangles into 
  114. their final positions. Note that the number of vertex of a side is 
  115. not fixed ; it will change accordingly to the distortions you make. 
  116. The last step, if required, is to put the last triangle back into the 
  117. position of the original side.
  118.  
  119. Try menu commands and context-menu (right-click) commands by yourself 
  120. ; their meaning should be obvious enough. Try right-clicking 
  121. anywhere, there are a lot of different context-menus.
  122.  
  123.  
  124. * Textures *
  125.  
  126. To use textures functions, you first have to be sure you have a 
  127. "gfx\" subdirectory, which should already be the case if you're using 
  128. QBSP. This directory is to contain .wad texture files. If you choose 
  129. "Textures" in the "File" menu or in a context-menu, the contents of 
  130. the file whose name is in the Specific "wad" of the entity 
  131. "worldspawn" will be displayed. You can extract textures from other 
  132. .wad or .bsp files and put them into this file.
  133.  
  134.  
  135.  * Conclusion *
  136.  
  137. NO WARRANTIES. This software is provided "as is". Use at your own 
  138. risk. The author cannot be held responsible for any damage, neither 
  139. direct nor indirect, caused to your computer or its data.
  140.  
  141. Author : Armin Rigo, armin.rigo@p22.gnothi.fn.alphanet.ch
  142. Any comment / bug report is welcome.
  143.  
  144.