86
86
Option Descriptions
87
87
-------------------
89
The following options are recognised:
91
-q Quieter output. Information about each level (like
92
the number of linedefs, blockmap size, etc) is not
93
displayed when this option is given, and a few other
94
messages are skipped. Important messages, like
95
failure to build a certain level, are still shown.
97
-fast Lets glBSP can cheat a bit and re-use the original node
98
information to create the GL nodes, doing it much faster.
99
Use this option to enable this feature. The message
100
"Using original nodes to speed things up" will be shown.
102
The downside to reusing the original nodes is that they
103
may not be as good as the ones glBSP normally creates,
104
e.g. the special checks to minimise slime-trails don't
105
kick in, and the -factor value doesn't have any effect.
107
-warn Shows extra warning messages, which detail various
108
non-serious problems that glBSP has while analysing the
109
level structure. Often these warnings show a real
110
problem in the level (e.g. a non-closed sector or
111
invalid sidedef), so they are worth checking now and
114
-normal glBSP usually detects if the normal node info (i.e.
115
the non-GL variety) is present: when yes, it is left
116
untouched, otherwise glBSP creates it. This option
117
forces glBSP to replace the normal node data with
118
newly constructed nodes.
121
Changes the cost assigned to seg splits. Factor can
122
be any number greater than 0, larger values make seg
123
splits more costly (and thus glBSP tries harder to
124
avoid them), but smaller values produce better BSP
125
trees. See the section below for more info. The
126
default value is known to be a good compromise.
128
-pack Pack sidedefs, by detecting which sidedefs are
129
identical and removing the duplicates, producing a
132
NOTE: this will make your level a lot harder to edit!
133
Therefore this is most useful when producing your final
134
WAD for public release.
136
-noreject Normally glBSP will create an simple REJECT map for
137
each level. This options prevents any existing
138
REJECT map, such as one time-consumingly built by
139
a dedicated reject builder, from being clobbered.
89
The following is a list of all the available options.
90
Each option has a short form and a long form.
92
-q -quiet Quieter output. Information about each level (like
93
the number of linedefs, blockmap size, etc) is not
94
displayed when this option is given, and a few other
95
messages are skipped. Important messages, like
96
failure to build a certain level, are still shown.
98
-f -fast Allows glBSP to cheat a bit and re-use the original node
99
information to create the GL nodes, doing it much faster.
100
Use this option to enable this feature. The message
101
"Using original nodes to speed things up" will be shown.
103
The downside to reusing the original nodes is that they
104
may not be as good as the ones glBSP normally creates,
105
e.g. the special checks to minimise slime-trails don't
106
kick in, and the -factor value doesn't have any effect.
108
-w -warn Shows extra warning messages, which detail various
109
non-serious problems that glBSP has while analysing the
110
level structure. Often these warnings show a real
111
problem in the level (e.g. a non-closed sector or
112
invalid sidedef), so they are worth checking now and
115
-n -normal glBSP usually detects if the normal node info (i.e.
116
the non-GL variety) is present: when yes, it is left
117
untouched, otherwise glBSP creates it. This option
118
forces glBSP to replace the normal node data with
119
newly constructed nodes.
122
Sets the cost assigned to seg splits. Factor can be
123
any number from 1 to 32, and larger values make seg
124
splits more costly (and thus glBSP tries harder to
125
avoid them), but smaller values produce better BSP
126
trees. See the section below for more info. The
127
default value is known to be a good compromise.
129
-p -pack Pack sidedefs, by detecting which sidedefs are
130
identical and removing the duplicates, producing a
133
NOTE: this will make your level a lot harder to edit!
134
Therefore this is most useful when producing your final
135
WAD for public release.
138
Normally glBSP will create an simple REJECT map for
139
each level. This options prevents any existing
140
REJECT map, such as one time-consumingly built by
141
a dedicated reject builder, from being clobbered.
141
143
These options are rarely needed:
143
-v1 .. -v5 Specify the version of the "GL Nodes" spec to use.
144
The default is -v2. Using -v1 produces an obsolete
145
format. Giving -v3 or -v5 will force certain lumps
146
to use the new formats, but is only useful for testing
147
since glBSP will automatically switch to V5 format
148
when certain limits are exceeded.
150
-loadall glBSP normally tries to copy lumps from the input
151
WAD file to the output file instead of loading them
152
into memory. This allows you to run glBSP on very
153
large WADS (e.g. 15 MB for DOOM II) on a low memory
156
This option causes everything from the input file to be
157
loaded into memory. This allows you to run glBSP using
158
the same file for both input and output, but I strongly
159
recommend _against_ it: you could lose your original
160
WAD if something goes wrong (and you know Murphy...).
162
-noprog Turn off the progress indicator.
164
-nonormal Forces glBSP to not create the normal node information
165
when it detects that it is absent.
167
-forcegwa Normally glBSP will automatically use GWA mode if the
168
output filename is missing (i.e. no -o option) or if
169
the output filename has the ".gwa" extension. This
170
option forces glBSP into GWA mode.
172
-prunesec Removes any unused sectors found in the level. Only
173
works when normal nodes are being built. This is
174
not done by default since some scripting languages
175
(Fragglescript, old versions of RTS) refer directly
176
to the sector numbers and removing even one will
177
change all the numbering.
179
-mergevert Merge duplicate vertices at the same location into a
180
single vertex. This is usually safe, but is not done
181
by default because some engines (e.g. Risen3D) need the
182
duplicate vertices to stay separate for special effect.
185
Sets the limit of the number of blocks the BLOCKMAP may
186
contain before we truncate it. Default is 44000. When
187
the level is too large to fit, glBSP will truncate the
188
blockmap, so it covers less area on the level. This
189
means that in the parts it doesn't cover (at the outer
190
edges) there is no collision detection: you can walk
191
through walls and other objects and bullets/missiles
192
don't hit anything. On very large but sparse levels,
193
using a larger value (e.g. 60000) may help.
195
A more serious problem is when the blockmap overflows.
196
The blockmap created would be invalid, and could crash
197
the DOOM engine when used. glBSP will create an empty
198
blockmap instead, causing modern ports to build their
145
-v1 .. -v5 Specify the version of the "GL Nodes" spec to use.
146
The default is -v2. Using -v1 produces an obsolete
147
format. Giving -v3 or -v5 will force certain lumps
148
to use the new formats, but is only useful for testing
149
since glBSP will automatically switch to V5 format
150
when certain limits are exceeded.
153
Merge duplicate vertices at the same location into a
154
single vertex. This is usually safe, but is not done
155
by default because some engines (e.g. Risen3D) need the
156
duplicate vertices to stay separate for special effect.
158
-y -windowfx Lets glBSP detect and handle the "One-Sided Window"
159
mapping trick. This can cause problems in some engines
160
so it is disabled by default.
162
-u -prunesec Removes any unused sectors found in the level. Only
163
works when normal nodes are being built. This is
164
not done by default since some scripting languages
165
(Fragglescript, old versions of RTS) refer directly
166
to the sector numbers and removing even one will
167
change all the numbering.
170
Sets the limit of the number of blocks the BLOCKMAP may
171
contain before we truncate it. Default is 16000. When
172
the level is too large to fit, glBSP will truncate the
173
blockmap, so it covers less area on the level. This
174
means that in the parts it doesn't cover (at the outer
175
edges) there is no collision detection: you can walk
176
through walls and other objects and bullets/missiles
177
don't hit anything. On very large but sparse levels,
178
using a larger value (e.g. 30000) may help.
180
A more serious problem is when the blockmap overflows.
181
The blockmap created would be invalid, and could crash
182
the DOOM engine when used. glBSP will create an empty
183
blockmap instead, causing modern ports to build their
186
-xp -noprog Turn off the progress indicator.
189
Forces glBSP to not create the normal node information
190
when it detects that it is absent.
192
-xu -noprune Prevents glBSP from removing zero-length linedefs and
202
196
ZDBSP Format Nodes
203
197
------------------
205
199
When the normal nodes overflow, older versions of glBSP would simply
206
write out the invalid node data. glBSP 2.20 will write out the node
207
data in the ZDBSP format (originally created for the ZDoom engine).
200
write out the invalid node data. glBSP 2.20 and higher will write
201
out the node data in the ZDBSP format (originally created for the
210
205
Interaction with other tools