QuakeEd


===============
Getting started
===============

First of all let's figure out can your system run
QuakeEd. You'll need Windows NT 3.51 or later version or 
Windows 95. If you are using Windows 95, you will need
OpenGL for Windows 95 DLLs. If you are lucky NT user, no
additional DLL are required.

What other files do you need to run QuakeEd ?
Of course, texture files. You can get these at Shake'N'Quake,
or anywhere else. Other thing you need is QuakeC source fils,
which contain descriptions & sizes of any entities you could
place in QuakeEd. These .QC files along with compiler is available 
at ftp.idsoftware.com/idstuff/source.

Ok, now I suppose you've got everything.
Start QuakeEd. 

Now you'll need to configure some directory related stuff.

\QuakeEd - QuakeEd root.
    I   
    I \QCC - place for .QC files
    I \GFX - place for WAD files. 
    place for your map files.

Open Things inspector (through View menu) 
and type .QC files path in Prog Dir: edit control. 
For instance C:\QuakeEd\QCC. Press Reload. If everything's 
ok, available classes should be in listbox below the class 
path.

Now you'll need to configure project path, and startup texture WAD. 
Choose Misc/Settings from menu. 

For project path could be C:\QuakeEd, and for
startup WAD - GFX\BASE.WAD, in case you have this WADF file.

Beware of using QUAKETEX.WAD, which is available at some sites,
because this file contains some information that QuakeEd can't 
propertly handle.

Ok, now restart QuakeEd. You will probably notice that this
time startup lasts a bit longer. Be patient.

=============
QuakeEd views
=============

======================
I  Z  I      XY      I
I  V  I     view     I
I  i  I===============
I  e  I    Camera    I
I  w  I     view     I
======================

Camera view is minimized at startup. You can enlarge
it by dragging splitter bar.

XY view displays view from top.
ZView displays brushes which intersect with Z checker point. In this
view bushes are visible from side. However XY brush dimensions does
not matter.

ZChecker point is visible in XY view, it appears like X.

=============
 First brush
=============

Brush is created by clicking mouse left button down in XY view
and dragging. When you release button, new brush will be 
created, of course if it's not empty.

==============
Basic commands
==============

( by John Romero & Jonh Carmack )

1. XY view.

  double click
    Positions the Z checker at the click point.

  click drag with no selection
    The camera or Z checker will be dragged if directly clicked on, 
    otherwise a new rectilinear brush will be dragged out from the click point.  
    The initial height of the brush is determined by the last brush selected or
    camera-clicked on.

    If the button is released when the new brush has no volume (a veneer), 
     the brush is discarded.

  click drag with a single brush selected
    If the click is inside the selected brush, the brush will be dragged 
    around without changing its shape.

    If the click is outside the brush, dragging will move the planes that 
    face the click point.   Planes will only move directly along their normals, 
    so a recrilinear brush will stay rectilinear.

    Spawned entity brushes (monsters, etc) can not be resized at all.

  click drag with multiple brushes selected
    No group shape changes are allowed, so the click must be inside one 
    of the brushes, and all brushes are moved together.

  ctrl-click drag with a single brush selected
    Holds the plane that faces the click point, and shears the adjacent 
    planes.  To grab a single corner, click outside the brush in the overlap 
    area between two planes.  If you click inside the brush, the top plane 
    will be held.

  shift-click
    Toggles the selection status of the clicked on brush as in the camera view.

    Entities are allways checked before the world, so you can shift-click on 
    entities even if there is a ceiling above them.

  ctrl-shift click
    Connects two entities.  The current entity has a target key generated, and the 
    clicked on entity has a targetname key created.

  shift-alt-click
    Moves the camera to the point clicked on.  It can be dragged dynamically if desired.

  right click
  right ctrl-click
    Points the camera towards the click point.  It can be dragged if desired.

  alt-right click
    Positions a clipper tool endpoint.  The first click places it at the minimum Z of 
    the selection.  A second click at the same point moves it to the maximum Z 
    of the selection.

    Two clipper points will carve as a straight line in the XY view.  Three points 
    (one of which must be at the max point instead of the min) will carve a slope.
    
    Escape key removes the current clippers, and enter actually cuts the selection.
    
    For more information on clipper tool, see Clipper Tool topic. 

ZView

  click drag
    The camera icon can be dragged if it is clicked on, otherwise no action 
    if there is not a selection.

    If multiple brushes are selected, they will allways be dragged as a unit, 
    no matter where the click is.

    If a single brush is selected, the location of the click determines 
    if the drag will move the entire brush or just the top or bottom plane.

    A click anywhere on the left side of the Z view will drag the full brush.  
    If the click is on the right side, it will drag just the plane closest to it, 
    changing the size of the brush.  Clicking inside a brush on the right side 
    also drags the full brush.

  shift-click
    Toggles the selection status of the clicked on brush.

  alt-click
    Sets the entire brush texture as in the camera view. 
    (alt-ctrl click is meaningless without a direction)

  ctrl-click
    Moves the camera to the height clicked on.  It can be dragged dynamically if desired.

Camera View

  click	
	  Sets the current texturedef to the value of the face clicked on.

	  Does not change any selection status.

    If there are any brushes selected, they will all be changed to this texturedef.
  
    If there are no brushes selected, the height of the next new brush created will be set based on the size of the brush clicked on.


  shift-click
    Toggles the selection status of the clicked on brush.

    If the brush is part of a different entity than the current entity, all brushes in current are deselected before selecting the new brush.  The current entity inpector is then changed to reflect the new entity.

  alt-click
    Sets the entire brush clicked on to the current texturedef.  Does not change any selection status.

  alt-ctrl-click
    Sets the single face clicked on to the current texturedef without changing the other faces.


  right-click drag
    Change camera angle dynamically.

=================
Keyboard commands
=================

  F2 : set camera wire draw mode
  F3 : set camera solid draw mode
  F4 : set camera textured draw mode

  F5 : set XY wire draw mode				- NOT IMPLEMENTED
  F6 : set XY textured draw mode			- NOT IMPLEMENTED

  F8 : Home camera pitch angle
  
  F12 : geometrically subtract the selection from the rest of the world.

  PageUp : moves the camera view to the next floor up.
  PageDown : moves the camera view to the next floor down.

  cursor arrows, a z d c , .
  Move the camera like in quake.

  Esc: deselect all selected brushes
  Delete : delete all selected brushes

  / : Flip the normal on the clipper tool

  Enter : Carve selected brushes by the clipper tool

  Space : clone all selected brushes.  deselects the originals and selects 
          the copies after offsetting by the grid size.

  Keypad arrows: moves the current selection in gridsize incrmenets.

  - + : moves the current selection up or down by gridsize increments.


==============
 Clipper tool
==============

  When you draw a brush you get rectlinear brush. However Quake
supports much more complex brushes. You may shear a brush (see 
XYview description above) and you may clip a brush.
Brush is clipped by clip plane which is described by two or three
clipper points (shown as circles in XYview). If you have two
clipper points, clipper plane is orphogonal to XY plane. If you
have 3 points they describe clipper plane, because.any plane is
determined by 3 points. To place clipper point alt-mouse right click
in XY view. If there a point, if will jump into heiht of last selected brush.
If not new point will have minimum z of last selected brush a z coordinate.
If you want to clip other side of brush you're clipping, you can
flip clipper normal by pressing '/'.

=============
 Inspectors
=============

There are currently 4 inspectors (or toolboxes) in Quakeed.

1) Things. Allows to place entities, and edit their key/pair 
   properties.

2) Textures. Shows currently available textures.
   Also allows to specify texture shift, scale & rotaion angle.
   QuakeEd now shifts, scales and rotates textures in CameraView.
   So you may see almost the same picture like in Quake.

3) Console. Outputs various errors, warnings and other usefull infor
   mation. When QuakeEd beeps, see console to find out what happened.

4) View control. Controls brush & entity filtering as well as grid
   display.

   Filtering is useful when your map is large.
   You may filter your map in 2 different ways. In both ways
   you should set Active checkbox. Now you may filter map
   that you work only with brushes visible in your current
   XYview or brushes in currently selected brush.
   To discard filter clear Active checkbox and press In XY view.

======================
Some toolbars commands
======================

  Select completely inside.
  Selects brushes completely inside selected brush. Selected
  brush is deleted afterwards.

  Select partially inside.
  Selects brushes partially inside selected brush. Selected
  brush is deleted afterwards.

  Select complete entity.
  Selects all brushes in current entity.

=====================
  Additional hints
=====================

When you open map or create new map, selection from old
map remains. This will allow you to copy paste between levels.

You may stop renedering in Camera solid in textured modes
by pressing Esc.

In Misc/Settings dialog box you can choose Fast or Accurate rendering
and light levels for X,Y,Z axis in range 0.0 - 1.0.

Your comments are welcome.

Tomas Talius,
tomas.talius@alna.omnitel.net

