-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
144 lines (114 loc) · 6.22 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#[1]start [2]ICRA labels
This is v5.2 of BSP, the most popular node builder for Doom.
BSP is currently maintained by [3]Colin Phipps. Please see the [4]BSP
entries in my blog for news about BSP, and the latest releases. But in
practice, BSP is an old and mature tool; I just update it every now
and then to fix any problems compiling it for new systems.
What are Nodes?
Before you can play a level that you have created, you must use a node
builder to create the data that Doom will use to render the level.
Doom uses a rendering algorithm based on a binary space partition,
otherwise known as a BSP tree. This is stored in a data lump called
NODES in the WAD file. This data structure must be precalculated and
stored in the WAD file befor the level can be played; the tool that
does this is called a node builder.
BSP is one of several node builders that can do this. There are
others: idbsp is the original node builder that id Software used on
the original Doom levels, for instance. BSP was the best known and
most widely used node builder throughout the height of the Doom
editing craze in the mid 1990s.
Features
* Fast Doom node builder.
* Supports a number of special effects.
* Supports multi-level WADs. Preserves non-level data in WADs.
* Includes an optional alternative algorithm for choosing the nodes
which reduces the chance of visplane overflows.
* Optional support for compressing the blockmap.
* Compiles on DOS, Win32, Linux, UNIX.
* Supports big endian & 64-bit systems.
Getting BSP
For Linux and UNIX systems, you download and compile the BSP source
code. [5]bsp-5.2.tar.gz contains complete source code. See the
included file INSTALL for instructions.
For DOS and Win32 systems, download [6]bsp51.zip, which contains
binaries for DOS and Win32 (that is, Windows 95/98/NT/ME/2000/XP).
bsp.exe is the version for DOS (note: it requires the accompanying
dos4gw.exe). bsp-w32.exe is the version for Win32. Note that I have
not released BSP 5.2 on DOS/Windows, because there were no changes in
this version that would affect the DOS/Windows release.
Usage
bsp [ -noreject ] [-factor nn ] [ -q ] [ -picknode { traditional |
visplane } ] [ -blockmap { old | comp } ] inwad [ [ -o ] outwad ]
Where:
-noreject
Causes any existing REJECT lump in the WAD file not to be
replaced.
-factor nn
Used for tuning the node builder. The number supplied is the
weighting applied when a choice of nodeline requires other
lines to be split. Increasing this value from the default of 17
will reduce the number of extra line splits, but this will
generally cause a less balanced node tree. The default is
usually fine.
-q
Causes BSP to run quietly, only printing output if there are
errors or warnings.
-picknode
Determines the nodeline selection algorithm. The "traditional"
option is best for most Doom levels. For levels which are
intended for the original doom2.exe and suffer from some
marginal visplane overflows, the "visplane" algorithm is
designed to minimise these and may help in some cases. See the
included visplane.txt for more information.
-blockmap
Selects the blockmap generation algorithm. The default "old"
algorithm generates a simple and correct blockmap. The newer
"comp" version produces a compressed blockmap, by reusing
identical blocks which should be equivalent in actual use. The
"comp" version is therefore better but it relatively untested
so is not yet enabled by default.
inwad is the input WAD file. This may contain any number of levels and
other lumps. The nodes and associated data resources will be built for
every level in this WAD. Any other data present in the WAD will be
copied to the output WAD unchanged.
outwad is the output WAD file. If the output file already exists, BSP
will write it's output to a temporary file while it is working, and
will only overwrite the output file once it is finished. In
particular, it is safe for outwad to be the same as inwad, although
this is not recommended unless you keep other backups :-).
Either inwad or outwad can be pipes or special files. On most UNIX
systems, you can have BSP read from STDIN and write to STDOUT by using
it as follows: bsp -q /dev/stdin /dev/stdout
Special Effects
* HOM-free transparent doors:
Simply make the sector referenced by the doortracks have a sector
tag of >= 900. No need to remember sector numbers and type them in
on a command line -- just use any sector tag >= 900 to permanently
mark the sector special.
See TRANSDOR.WAD for an example of sector tags in the 900's being
used to create HOM-free transparent door effects.
* Precious lines:
If a linedef has a sector tag >= 900, then it is treated as
"precious" and will not be split unless absolutely necessary. This
is good to use around borders of deep water, invisible stairs,
etc.
Furthermore, just for grins, if the linedef's tag is 999, then the
sidedefs' x-offsets set an angle adjustment in degrees to be
applied -- you can look straight at a wall, but it might come
right at you on both sides and "stretch".
Copyright
Node builder for DOOM levels (c) 1998 Colin Reed, Lee Killough
(c) 2001 Simon Howard
(c) 2000,2001,2002,2006 Colin Phipps
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or (at
your option) any later version. See the file COPYING for details.
See the included file AUTHORS for a complete list of contributors.
References
1. http://games.moria.org.uk/doom/bsp/
2. http://games.moria.org.uk/labels.rdf
3. mailto:[email protected]
4. http://blog.moria.org.uk/games/doom/bsp
5. http://games.moria.org.uk/doom/bsp/download/bsp-5.2.tar.gz
6. http://games.moria.org.uk/doom/bsp/download/bsp51.zip