v. 0.86b

1.  You will need to have some version of openGl installed in order to run
BSP -- EVEN IF YOU ARE NOT RUNNING glBSP.

2.  The rest of the "new" stuff is in the file 86b.txt, which was part of
the .zip archive.

Yahn

--------------------------------------------------------------

v. 0.85b

1.  Clickig the "x" box to Exit BSP no longer crashes bsp when you "save"
your map.

2.  Alternate texture window behavior, especially for loading, is
settable in bsp.ini.  A bit "glitchy", but should be speedier.  However, I think
it is a bit of a meory hog.  Set the "faster_textures" key in bsp.ini to 1
to give it a try.  If you don't like it, set it back to 0.

3.  Two kinds of MultiFace Dragging can be accessed from the mouse now (if
you assign the commands to the mouse in the bspmouse.ini!).  Flavor 1
drags all faces that are "parallel" and in the same direction as the
closest clicked face.  Flavor 2 requires that the planes be "in line" also,
i.e., their distance values must be close.  The tolerances are settable
in the bsp.ini.

4.  Selected Texture Color for Wad Export Selections (see below) is settable
in the .ini.

5.  3d Background Color settable from the Colors Dialog Box.

6.  3d Settings help and mouse function changes are accessible by right
clicking the "bar" at the top of the 3d window for a popup menu of options.

7.  Mouse settings, Selection vector direction, alignment tools, and
camera manipulation accessible by right clicking the top of the xy
window in the "bar" area (you can click on top of the text info areas).

8.  Alignment tools added to xy views.  Right click in "bar" at top of
window (not the frame of the window, though) and you can align left, right,
top, or bottom (selected brushes), or vertical or horizontal centers.

If it would be useful I can probably add "space equally" functions, and
would consider a "grow to largest"/"shrink to smallest" horiz. or vert.

9.  The vertex manipulation crash is solved, finally!  Duplicate planes
should be handled smoothly by BSP, too.  If not, let me know.

10.  Merge brushes command added to Edit menu.  I may make this apply
automatically after "subtraction" and some other operations.
Right now, it applies only to all modifiable brushes or to only selected brushes (that are not invisible,
regioned, etc.).  You are prompted whether to do the "whole" map, or just
the selection.

You should save before merging!!!

You will be prompted whether you care about texture identity. If not, adjacent
brushes will be merged, regardless of texture.  Otherwise, if either
brush has mixed face textures, or all the textures are not the same,
no merging will occur.  Texture offsets are ignored.

Merging is multi-pass until no more merging can take place.  The status
bar shows the progress.  Be patient, it could take a minute or more to
merge a big map.  (dm1.map took about 1 minute and about 400 passes).

The epsilons are settable in the bsp.ini.  I'll be putting these into a
dialog box soon, though.

11.  Texture window, right mouse menu:

	Commands added to Select All, Deselect All, Select Used textures.  Right
   shift clicking selects/deselects individual textures.  Selected textures
   have a gray background or x by default.  These can be "exported" to a
   new .wad file.  The palette can be added.

12.  Texture window, more stuff:

	You can copy a portion of the 3d window directly into a miptex.
"Save SnapShot to MipMap..." or to the Clipboard.  From the Clipboard,
you can edit in your favorite paint program, e.g. PaintShop Pro(tm),
and "Paste" back in as a new texture in the .wad.  If you don't save
the texture out to a .wad (see 11), the new miptex will be lost, of
course.

13.  You can also copy a texture to the clipboard from the right mouse.

14.  Merging, Splitting, Carving are "Undoable".

15.  If .map has no "wad" key, the default wads are loaded and
the "wad" key is set to the default wad string.

16.  Edge Manipulation:  EDGEDRAG option added to bspmouse.ini.  This should
override the default Vertex dragging mode.  Edge dragging applies to multiple
selected brushes, if applicable.  A drawing will explain:

+-----+-----+
|     |     |
|     |     |
+-----x-----+

If these two brushe (top down) are selected, and you click the x, then
when you drag:

+-----+-----+
|     |     |
|     |     |
+     |     +
 \    |    /
  \   |   /
   \  |  /
    \ | /
     \|/
      x

The "vertexes"/"edges" that are _under_ x are moved.  Give it a try.

If only one vertex is under the click, then the "old way" of vertex dragging
takes over.

These hierarchies are set in the bspmouse.ini.

17.  Monster Browser is activated.  Access from the display menu.

Only entities with defined .mdl files are listed.  The +  and - buttons
adjust the monster/weapon/etc. height in the window:

Left mouse draw to rotate (roll pitch and yaw, depending upon drag direction).
Hit reset, to reset the angles.
Shift left mouse and drag to move in and out.
Hold the right button to "animate" the .mdl (frames animate sequentially).

18.  Other stuff... as usual.

KNOWN PROBLEMS:

The Selected Brush Window will not show the "textures" correctly.
Do not rely on this view for now.  I am working on dealing with
texture locking during rotation...and cleaning up the SBV interface.

Moving the button bars to different docking slips makes them flake out and
disappear.  Don't move them for now.

Pasting a mipmap doesn't show up in the texture window until you click on
another texture.

Part of my todo list:

A new .hlp file.
Mouse scaling in xy window like rotation.
Increasing the .wad limit past 8
Stretch texture to Face.
Group name sorting/reordering.
2d Selection height tick
Autoscroll in xy windows
Gravity walkthrough
Animated plats/rotating brushes, etc. (togglable)
0,0,0 crosshair in xy window
Fixing the saving of button bar positions (almost done)
Show texture thumbnails in texture list boxes.
_Optional_ "modal" mouse interface for "newbies", buttons or menu driven

-------------------------

v. 0.84b

1.  New version of ywbsp added to .zip.  This version includes -alt45 toggle
that fixes texture problems between some editors and some utilities.  Only
for surfaces that are facing 45 degrees from any aix.

ywbsp also includes a new toggle:

-bspleak

The .bat files now call this toggle.  You may want to copy ywbsp.exe
over your current qbsp.exe from the .bat files, however!

The -bspleak, if a leak is found, creates a new data file, a .por file.
This file can be loaded into the bsp editor under the File | Leaks
menu.

The data in the .por file is _much_ better than the simple .pts file.

Ywbsp.exe, however, writes out a .pts file that includes more data than
the standard qbsp .pts file.  If you run ywbsp.exe -bspleak, the .pts files
contains _even more_ info.  However, to really be useful, you will need
to increase the # of particles in quake before loading the "pointfile".

Quake -particles 10000

Or something like that.

2.  BSP now can read the .por file created by ywbsp.exe.  If you are
qbsping with the -bspleak, and the map is leaky, a .por file is created.
If you view the .map in BSP, and load the .por file under File | Leaks
BSP will show the following:

NOTE:  Probably best to view in full texturing, with outline off (Alt-O).
Or in "wire frame" with the "world" and "entities" omitted at first.

a.   In the lock color (blue by default), the "portals" that see out of
the node that had the entity that was "hit" by the leak checker.

b.   In light blue/cyan, a line from the entity to the first portal leading
out of the "hit node" from a.  That portal will have, at each vertex,
a small line perpendicular to the surface, to help show it.

c.   Lines (in the current face color) traveling from the center of each
portal from the node to the "outside", i.e., following the "leak".

d.   Outlines of each "portal" the path traverses along the way (in the
selected brush color (red).

e.   The first portal that the "player" could not fit through is also
outlined in light blue.

The 3d window also has buttons to limit the # of portals to show, as
the leak is probably close to the "hit node" and a button to kill the
portal stuff when you're done.

Note that ywbsp.exe -bspleak .pts file contains much of this information
for loading and viewing in quake.

I'm open to suggestions on this, I'll make the colors customizable and start
you at the hit node for the next version.  Autoleak plugging is not going to
be generally workable b/c of computational reasons.

3.  Make Wedge tool added just to shut Preacher up.  There is one "quirk"
feature.  If you drag the "non-hypotenuse" face away , the wedge will turn
into a rect, with a cut off face.  To solve, reduce the size by moving the edge
in, first, then let go.  Then drag the face out and the wedge will scale
by face dragging correctly.

4.  Partial and Total regioning buttons and commands added for Gripp.

5.  Alt-J and Display menu option to "jump" to particular coordinates.

6.  Some other stuff... as usual.

What I'm working on:

A rotation, extrusion tool.  For Sageous.  This will not be as hard as I thought.
Speeding up the texture window loading/resizing.
Multi face dragging
Multi brush aligning (align tops, etc.)
A "monster" browser for models, etc.
Group reordering/ spacers in group list
Correct gamma correction (not working at all right now).
Tons of other stuff...

----------------------------------

v. 0.83b

1.  Rally.qc added and full3.qc added that contains the rally entities.

2.  Texture window right mouse now has option for settign the "scale step".  Before
it had been 0.1.  Now it can range from 0.0001 to 1.0.  Set the step in the
bsp.ini (for the default).  The 3d interactive texture scaling will use this step.
0.001 does, in fact, seem useful.

3.  Fixed some bugs in the clipping tool where if a "whole" entity was clipped away,
the clipper would crash.

4.  The clipping tool does not "delete" fixed size entities such as lights, anymore.
Only brushes for variable sized entities are clipped.  Same for when splitting.

5.  Split command now prompts if you want to "select" the split off brushes.  This way
you can "separate" the split and the unsplit by dragging the selected brushes...

6.  Brush regioning (1 for now).  Create a brush, click the "make into region" button.
Anything not "totally" enclosed by the brush is excluded from operations...
Groups | Region to turn regioning on or off, create another region brush to move the
region being worked on.  Height may or may not be ignored, user is prompted...

7.  The qrally.wad file no longer crashes bsp on loading.  There was a _BUG_ re
texture names that were exactly 16 chars long...  This is fixed now.

8.  The "-" button in the keypair view now deletes the selected keypair (again)

9.  Horiz. scroll added to help window.

10. Models are shown in the 3d Window.  Render | Models to turn on or off.  The
model data must be set up in the models.dat file. Make sure the pak paths are
correct.  The Show/Hide is currently ignored.

Model paths can be .pak names, or the full path to the model:

c:\quake\id1\progs\player.mdl

Entity browser has options to turn animation, models, and wire framing on/off.

11.  Group names of up to 64 chars are loaded/saved correctly.

12.  Export regioned brushes (will add a bounding cube and a player start)

13.  Bsp.ini start_scale value is not ignored anymore (oops).

14.  When resizing a brush in the 2d view, the size info is dsiplayed in the status bar.
Also, number of selected, or nothing or dimensions if only 1 selected shown, too.

15.  Make Entity sends the new entity to the current group...(for fixed).  Variable brushes
remain in the group they started in...

16.  Bsp.ini and entity browser has option to use wire frame for showing
entity "boxes" in the flat/textured 3d view.

THERE IS NO IDIOTPROOFING THE MODELS.DAT.  IF THERE IS A CRASH, THEN THE
PATHS ARE PROBABLY WRONG.  I'LL MAKE IT BETTER FOR THE NEXT BETA I SEND.

-------------------------------------

v. 0.82b

1.  Okay.  Seems pretty stable now.  Been editing with it for hours.

2.  When you are selecting brushes:  Now when you start to drag you a)
have to drag at least 4 pixels before the hit brushes stop cycling and
turn into a "selection box" and b) the hit brushes that were cycling are
restored to their original selection state as it is assumed you intended
to use the selection box to select brushes.  The restoration is visible
after you let go of the mouse button.

3.  In case anyone didn't know this, you can use "Merge In..." under the
File | Objects menu to merge a .map file into the current .map.  The
following two caveats apply:

   a).  The world keypairs of the merging in map are ignored; and
   b).  You could end up with more than one info_player_start.

I leave it to you hotshots to figure out what to do about these issue
(and any others) :)

4.  Setting an angle key updates the xy views immediately.

5.  The Help Window opens automatically for Map info, texture usage list,
and entity descriptions.

6.  The Entity Browser has been streamlined.

7.  There is a button in the keypair entry screen to 'apply' the keypairs to all
selected entities.  Use with caution as not all keypairs are always relevant.  However,
this should allow, e.g., selecting multiple lights and setting their "light" key
automatically.  I have made it so that you are asked if you really want to set "classname"
or "target/targetname" keypairs across multiple selections (you could
severely screw up a map by setting a classname that changed from fixed
to variable size, etc).  Hopefully this is sensible.

8.  Texture locking.  When selected, locked brushes show up in their own color.
Set in the Color prefs dialog.  Once locked, moving the brush preserves the
texture placement (i.e., translation, if you rotate or scale the brush, it currently
won't work).  This is done for the whole brush, however, if face
by face locking is somehow desirable, let me know.  It is doable, but I won't do it unless
someone can demonstrate a true need for it.  Edit | Texture Lock is the place to lock/unlock
selected brushes.

Locking only applies to brushes in modifiable entities (i.e., entities
that take textures brushes, not just placeholder brushes).

Alt-L and Alt-U Lock and Unlock the selected brushes.

9.  The leak trail now works again, the dots are the "current face" color (didn't feel like
making the color user definable...yet).

10.  There are now buttons (tiny) in the 3d and xy windows to display in the "help" window a
breakdown of the current mouse settings.  If you are like me, you can't remember what the
settings are...hehe.  This should be helpful.

11.  Static text fields in xy windows widened a bit.

12.  Copy/Move dialog allows multiple offset copies, specify # of copies
in the dialog.  Only the last copy remains selected.

13.  XY Window redraws should be speedier, if you are viewing just a
portion of the .map at least.

-----------------------

v. 0.81b 7/11/97

1.  There are now two versions of bsp, one is an openGl version that is not worth
your time unless you have a true hardware openGl card.  Thus, current 3dfx card
users such as Monster/Righteous, don't use this version.

Actually, I'm not going to release the GL version quite yet.  I'm waiting on
a GL accelerator card to test on.  I'm also doing a Glide version of BSP
that should run even with a Monster 3D/Righteous 3D card.  I'll put it out
as soon as it's done.

2.  Fixed the "revert to world" bug where brushes would disappear.

3.  BSP.pos is obsolete.  Positions are now stored in bsppos.ini.  Note that
this is a text file, but there is not much that can be user-tweaked yet.  Let
me know if there are problems.

4.  3d Window has a bunch of new mouse functions.  See bspmou3d.ini for details.
   These include:
                Drag face
                Shear face
                Drag selected brushes (two versions)
                Use clicked face as clip plane

5.   2d (xy) window has some new commands for selection.  You can now drag
(shift left click drag) to select multiple brushes.  If you don't drag, the
old "cycle hit" brushes works, once you drag this is enabled.  All brushes
in the "rect" are selected, regardless of depth.  There are two versions, one
for selecting "partial" brushes on drag.  Any brush whose bounding box intersects
the drag box is selected.  The other is for selection "total" brushes.  The brush
must be totally within the selection brush to be selected.

6.  The 3d Wire frame view has been revamped.  It should match up to the flat and
textured views now.  BSP.ini and Prefs. dialog now reflect options to determine
whether unselected brushes are "colored" and if so, whether to use the "texture"
color (calculated based on average color in the texture) or to use the
group color (like in xy views).  There is also an option to determine whether
to backface cull polygons in the 3d wireframe.

7.  More UNDO functions added.  NOTE THIS IS STILL NOT QUITE "DONE".  Delete
brushes and drag brushes in xy views should be "undoable" now.  Let me know if
undo "crashes" on you ever.  There are still numerous commands that are not
yet undoable, don't email about this yet, I'll get to them one by one.  It's
not trivial to implement, and I'm trying to generalize the cases as much as
possible so that, eventually, I can do "unlimited" undo with redo!

8.  Probably some bug fixes that I'm forgetting.

9.  Yaw rotations with the mouse should now snap to the correct angle.

10.  Added "Rectangular Top" checkbox to arch maker.  Fits arch stones to
the shape of the seed brush.

11.  Invisible brushes are not copied to clipboard.

12.  Saving to a nonexistent file names (e.g., a:\map.map when disk has
been removed) now prompts for a new file name until the user either
picks a file.

13.  Added line thickness setting for selected brush to bsp.ini.

14.  XY Window redraws unselected brushes first, then selected.  Thus, if you
use a line thickness of 1 for selected brushes, you should still get
unobstructed lines.

15.  Fixed a round-off error in drawing brushes where they weren't quite
"on grid" when they actually are.  Some faces may still appear to be
off by one pixel from the grid, however.

16.  Pasting to an invisible group now requests whether to make the group
visible first.

17.  Edit | Select | Find Brush by # added to allow finding by original
load index.  Only useful for some folks.

18.  Texture window right mouse has an option to list used textures
out to a file, including number of faces using the texture.

19.  File | MapInfo displays brush type/counts in the status bar for
current map.

20.  Export | Selected.. added.  Exports the selected brushes to a .map file
(use a new name!).  Allows you to specify to "enclose" it in a box.
The box is offset from the bounding box of the selection by the gridsize.
The thickness of the walls is the gridsize.  The dialog allows specifying
the sky, walls, and floor textures.  If there is a texture that has a
name startign "sky", it will be automatically selected.  You have to
click the "enclose" button to get the box at all.  You also specify the
.bat to use for translation.  The selection is then sent to the sepcified
.map file, with bounding box and info_player_start (if needed, though it may
may be in the middle of nowhere, let me know any suggestions on making
this function better!) and the selected translator is called.

21. I'll be putting in an option that will speed up the texture _loading_ at
the expense of a bit of speed in dragging the thumb, updating, and redrawing
the texture window.  Hope that's okay.  I'll make it changeable on the fly.

-------------------------------------

v. 0.76b

1.  Added bspmouse.ini and bspmou3d.ini for setting up the mouse functions.
See each file for syntax and options.

2.  Group window list box can be set to resize to the Group Window (set in bsp.ini)

3.  Texture window, most stuff moved to right mouse button.  Animation can be
turned off in the .ini by default.

4.  Group window, stuff moved to right mouse button.

5.  Copy/Paste should preserve target/target names

6.  Group names can be up to 64 chars now.

7.  Texture window should be faster, a bit more setup though.  I may tweak this
a bit more...

8.  New 3d window mouse commands for lifting texture, applying lifted texture, etc.
See the bspmou3d.ini for the descriptions.

9.  Other stuff.

---------------------------

v. 0.75b

1.  Added bspbars.ini file, which allows for customizing the button bars bsp uses.
See the file for the syntax.  There is a problem using 3 or more button bars,
however, in that they get stacked onto the second line.  I don't know any easy
solution yet.

2.  Double click on key pair brings up editing dialog.  Right mouse on key pair
entries allows cut/copy/paste/edit, etc.

3.  Other bug fixes, not very glamorous, so I won't list them.

4.  Oh yeah, the biggest changes:  Added operational preferences, colors, and
directories dialogs under the "File" menu. This was quite overdue, sorry.
Note:  Some setting (esp. directories) will require restarting bsp to take
effect.

---------------------------
                           
v. 0.74b

1.  Fixed the 16-bit loading bug for ents.qc files > 32K in length.

2.  Added shading to flat and textured windows.  See bsp.ini for new settings
for enabling/disabling and setting default levels.  Colormap.lmp must be in
the same directory as ents.qc file.

3.  Added option to xy views and bsp.ini to use "dots" instead of grid lines.
This can be somewhat slow if there a lot of dots on screen... But, it makes
views much easier to see when editing with the grid on.  It's choosable from
the grid size button in the xy views.

4.  Added a setting to bsp.ini to determine order for 45 degree faces.  If
your qbsp'd level doesn't look right for certain faces (ie, the textures
are not as it looked in bsp) then try the opposite setting for this one.

5.  I've included a qbsp.exe version (ywbsp.exe) that supports:

       a.  256 sided brushes
       b.  multiple texture .wads
       c.  hipnotic rotating brushes
       d.  does not require everything to reside in \quake directories
       e.  provides a bit more feedback during processing
       f.  has a couple of new command line tweaks

6.  Added a combobox (for now) to turn vertex dragging on or off
and to choose the type of manipulation (see bsp.ini).  This should allow you
to select "unselectable" brushes without dragging vertices inadvertently.

7.  The xy window is not "tied" to the 3d window camera.  Use the right mouse
to jump around the xy views (Alt-C to center everything).  The arrows move you
around the 3d view.  The camera icons thus move around the xy views.

8.  Still other stuff I can't remember.
----------------------------------

v. 0.73b

1.  Fixed a bug that may have been causing the renderer to crash.

2.  Fixed the min/max texture window bug where the current texture was not
being jumped to.

3.  Multiple .qc file support in the bsp.ini.  Enter a semicolon separated
list of .qc files in the entity_directory to parse.  Paths are stripped, see
the bsp.ini for example syntax.  Also added a setting to "sort" all entity
names across all files.  If set to 1, they get sorted in the drop down list,
if not, they stay in the order loaded (including file order).

4.  Multiple entities can be selected in bsp.  If you selected an entity and
then selected another one, the colors might not be quite right, though.  This
can be disabled from the bsp.ini if you don't like it.  I may fix this before
I release this ver., though.

5.  Fixed a bug where the palette was not being realized properly.  May have
caused some ugliness on 256 color displays.

6.  Current texture is on the control bar now, so you don't _have_ to have the
texture browser open to change it, etc.

7.  Other stuff, as usual, that I can't remember.

8.  Send more $$$ :)  I have collected $0 to date.  Oh well...


----------------------

v. 0.72b

1.  Fixed a bug where BSP would crash if you clicked on a brush in the 3d view
while the clip points were visible.

2.  New brushes now default to have their bottoms (or other sides depending
upon xy view that is current) at the eye level.  Height is still determined
by the last brush deleted or modified.

3.  Clip points should be centered in the other XY windows, instead of having
to track down the points.

4.  By popular demand, I added my address and some info to the About...
box so that anyone who wants to send in a voluntary beer fund
contribution can do so.  BSP is still freeware and it's not done yet.

If you want to send money, please do so.

Send all contributions, US $15-25 suggested, to:

        Yahn W. Bernier
        659 Peachtree Street, Suite 1608
        Atlanta, Georgia 30308

If you send $$, I thank you profusely!

------------------

v. 0.71b

1.  The rgborder and rgb16order settings no longer matter.  Colors should look
correct in all video modes.  No need to run File | Texture Test, etc.  16bpp and
24bpp color modes have _correct_ colors now.

2.  Rendering should be faster in 16 and 24 bit color modes.

3.  "New" map crashes fixed; crashes where user had to pick a texture .wad
fixed.

4.  Metrics for group window and entity browser font sizes, button sizes, field
sizes, etc. in bsp.ini now.

5.  Texture window can be togged to not show names, if desired.

6.  XY Views don't draw near top of the window now.

7.  

---------------------------
v. 0.70b

1.  bsp.pos file should now save properly between versions.  If you delete the
old one and start over, the troubles should be gone.

2.  Selected brush view enhanced.  See bsp.ini under 0.70b portion for new
settings and explanations.  Use the right mouse button to drag around the
selected brush.  Shift-right drag to move in and out.  PLEASE DO NOT SEND ME EMAIL ABOUT HOW THE FLAT/TEXTURED
SBV doesn't quite work right.  Added wire/flat/textured selection box to
SBV.

3.  Other stuff I recently emailed to Steve/Magicman at http://www.planetquake.com/bsp

4.  Save As... and Save where map name is default name now change the Tab to
reflect the correct file name.

5.  Entity boxes in flat/texture 3D view are in the correct color.

6.  "WADK" support (or "WAD3"), including different palette support, for the Ion Storm guys :)

7.  Group visibility status saved in .map now.

8.  Still more stuff...

-------------------------
v. 0.69b:

1.  Refurnished the texture browser look a bit.  BSP.ini now contains keys for
setting the button width/height, the width of the s,t,r,sx, and sy fields,
the width of the fly over hint display (and the combobox / pulldown of
texture names).

2.  The bsp.ini bsp_font= setting should set all bsp fonts now.

3.  Window backgrounds changed to button face color.

4.  Added "Tabs" control bar showing currently open .maps for easier
switching between .maps.  The bsp.ini allows removing this or moving the
Tab control bar to the top or the bottom depending upon the value set there.

5.  Added a bsp.ini setting to disable displaying and dragging the five
cameras in the xy views.  The Cameras are still there, just their display/
dragging is togglable.  You can toggle them on or off from the Camera menu
in the xy views, too.

6.  When the zoom is greater than 100%, the camera icons do not become so
huge that it is impossible to edit anymore.  They max out at the size they
are at at 100%.

7.  Various bug fixes.

8.  Right dragging to zoom in on a texture in the texture browser now hides
the "Calc" button.

9.  The bsp.ini setting for gridsize= is now working again.  This sets the
default gridsize.
