ericw-tools/changelog.txt

301 lines
13 KiB
Plaintext

2016-09-20 TyrUtils-ericw 0.15.8 release
- light: fix black noise in some cases when using -bounce.
- light: try to limit artifacts caused by "too many lightstyles on a face",
by saving the 4 brightest lightmaps. The previous behaviour was random,
so you would likely get bad artifacts when that warning occurred.
- light: restore and expand the "unmatched target" warnings.
Now checks "target", "killtarget", "target2", "angrytarget", "deathtarget".
Also checks for any "targetname" that is never targetted.
- light: restore support for skip-textured bmodels with "_shadow" "1".
This is only supported on bmodels where all faces are textured with "skip".
- light: add "_lightignore" model key, makes a model receive minlight only.
2016-09-09 TyrUtils-ericw 0.15.7 release
Bugfixes:
- light: fix shadow-casting bmodels that touch the world from messing up
sample points on world faces, and prevent the world from messing up
bmodel sample points (regression in 0.15.5)
- light: clamp lightmap samples to 255 before smoothing, downscaling.
reduces jaggies in cases with very bright lights casting hard shadows.
- light: fix order of "_project_mangle" value to be consistent with "mangle"
- light: various crash fixes
- light: minlight no longer bounces
Performance:
- light: new, faster raytracing backend (Embree)
- light: estimate visible bounding box each light by shooting rays in a sphere.
this gives a speedup similar to vised maps in 0.15.5, without requiring
the map to be vised. As a downside, there is a small chance of
introducing artifacts where lights cut off too soon.
Disable with "-novisapprox".
- light: bounce lighting code redesigned to use less memory
Other:
- all: windows builds now require MSVC 2013 runtime:
https://www.microsoft.com/en-ca/download/details.aspx?id=40784
- all: restore Windows XP support
2016-06-17 TyrUtils-ericw 0.15.6 release
- rebuild OS X binary as it was built in debug mode by accident
2016-06-10 TyrUtils-ericw 0.15.5 release
New features:
- light: added a better options summary with the -help flag
- light: added -bounce option, "_phong", "_project_texture" key
- light: use vis data to accelerate lighting
- light: "_minlight_exclude" key to exclude a texture from receiving minlight
- light: add "_sun2" "_sun2_color" "_sun2_mangle" which creates a second sun
(unrelated to "_sunlight2" which is the sky dome light)
- vis: support .prt files written by bjptools-xt
- qbsp: add -objexport flag
Bugfixes:
- vis: fix ambient sounds when using func_detail, broken in tyrutils-ericw-v0.15.3
2015-12-10 TyrUtils-ericw 0.15.4 release
New features:
* light: new "-parse_escape_sequences" command-line flag.
The "\b" escape sequence toggles red text on/off, you can use this
in any strings in the map file.
e.g. "message" "Here is \bsome red text\b..."
* light: new "-surflight_dump" command-line flag. Saves the lights generated
by surfacelights to a "mapname-surflights.map" file.
* light: new "_sunlight3" and "_sunlight3_color" keys. Same as "_sunlight2",
except creates suns on the bottom hemispere ("_sunlight2" creates
suns on the top hemisphere.)
* build: support compiling with Visual Studio
Bugfixes:
* light: fix antilights (broken in last release)
* light: fix _mincolor to accept 0-1 float colors
* light: fix surface lights on rotating bmodels from incorrectly spawning
lights near the origin
* qbsp: log coordinates for CheckFace errors
* qbsp: round texture coordinates that are close to integers, for Darkplaces
compatibility
* qbsp: remove 128 char limit on entity key/value values
2015-10-26 TyrUtils-ericw 0.15.3 release
* hexen2 support, patch from Spike
* light: add "_surface_spotlight" key for making surface lights into
spotlights based on the surface normal
* vis: Reuse each cluster's visdata for all leafs in the cluster
* light: add "-sunsamples" flag to control number of samples for
_sunlight_penumbra and _sunlight2
* qbsp: add "-epsilon" option to control ON_EPSILON, from txqbsp-xt
* light: silence "no model has face" warning generated by "skip" faces.
* light: fix "-gate" (was calculating too-large bounding spheres for delay 2
lights.)
* qbsp: updates to the "-maxNodeSize" feature added in 0.15.2 to be closer to
the txqbsp-xt version.
* light: Adjust the trace algorithm to match that in q3map.
* qbsp: print coordinates for "New portal was clipped away" warning
2015-08-09 TyrUtils-ericw 0.15.2 release
* qbsp: add "-maxNodeSize" option, from txqbsp-xt. Defaults to 1024. Makes large
maps process much faster and should generate better bsp trees.
If it causes a problem disable with "-maxNodeSize 0"
* qbsp: make "mixed face contents" and "degenerate edge" non-fatal, from txqbsp-xt
* qbsp: make "-oldaxis" the default. new "-nooldaxis" flag to get the previous behaviour.
* light: add "-surflight_subdivide" flag to control amount of surface lights created
* light, vis: use below normal process priority on Windows
* light: allow negative surface light offset
* light: average the lit file color components to generate the bsp lightmap value.
TODO: use a perceptually weighted average.
* light: fix lighting of hipnotic rotating entities.
* light: fix crash in "Bad texture axes on face:"
* light: fix surface lights being mistakenly duplicated
* light: add "-onlyents"
* light: add "-dirtangle" setting to control dirtmapping cone angle, default 88 degrees.
2015-07-09 TyrUtils-ericw 0.15.1 release
* light: .lux file support from Spike, for deluxemapping
* light: add gamma control with -gamma flag and "_gamma" key
* light: various optimizations
* light: rename -dirty flag to -dirt for consistency
* light: make fence texture tracing opt-in with the "-fence" flag.
fix an issue with fence texture coords.
* light: support switchable lights with any light* classname, not just "light"
* light: fix debugging spam output from last build
2015-05-01 TyrUtils-ericw snapshot
* light: fix hang when using _deviance, make _samples default to 16 when
_deviance is set.
* light: fix for always generating a .lit file when surface lights are used
2015-04-29 TyrUtils-ericw snapshot
* qbsp: fix broken -onlyents flag
* qbsp: fix texture offset on rotate_object, so they match in the
editor. Added "-oldrottex" flag to revert to old behaviour. From txqbsp-xt.
2015-04-27 TyrUtils-ericw snapshot
new features:
* light: fence texture tracing, for bmodels with "_shadow" "1"
* light: surface light support via "_surface" "texturename" light key
convenience:
* light: respect "_dirt" "-1" bmodel key in -dirtdebug mode
* light: allow setting "-dist" and "-range" command-line flags in worldspawn
("_dist", "_range")
* light: accept "_sunlight_mangle" as an alternative for "_sun_mangle"
other:
* all: increase stack size to 8MB. Fixes qbsp crash with bbin1.map on Windows,
light crashes.
* qbsp: switch to hardcoded MAX_MAP_PLANES (262K), speeds up map file loading
phase.
* qbsp: MakeFaceEdges: accelerate with a hash table to avoid slow O(n^2) search
for edges
* qbsp: ChooseMidPlaneFromList: fix off-by-one error in axial plane test. On
the first SolidBSP pass, gives fewer split nodes on bbin1.map (128k vs 199k)
* light: MatchTargets: disable copying "style" key/value from a light to the
entity that targets it. Don't see any point, and causes problems if "style"
is meaningful for the targetting entity (e.g. a monster).
2015-03-05 TyrUtils-ericw shapshot
* light: support "_dirt" "-1" on bmodels to disable dirtmapping
2015-02-24 TyrUtils-ericw snapshot
* light: _sunlight2 (sky light/light dome) support from q3map2
* light: _sunlight_penumbra (deviance) from q3map2
2015-01-31 TyrUtils-ericw snapshot
* light: per-light dirtmapping control
2015-01-21 TyrUtils-ericw snapshot
* light: revert trace change in TyrUtils 0.7 that was causing artifacts.
fix bug in determining trace hitpoint
2015-01-19 TyrUtils-ericw snapshot
* light: handle colours in the range 0-1
* light: ambient occlusion / dirtmapping from q3map2 support
* qbsp: account for miptex struct in wad3 lump disksize
* light: Increase precision of lightmap extents calculations
* qbsp: fix coordinates in degenerate edge error in tjunc.c
* build: bump the fallback version number in Makefile
* bsputil: fix wad export from bsp with missing textures
2014-02-16 TyrUtils v0.15
* qbsp: Cope with textures names containing '{' or '}' (e.g. for alpha mask)
* qbsp: Increase MAXEDGES limit from 32 to 64
* qbsp: Make transparent water the default (same as txqbsp)
* qbsp: Improve some clip hull errors with map source line numbers
* qbsp: Ignore func_detail entities on -onlyents compiles
* light: Fix bug with minglight clamping with coloured lighting
2013-10-03 TyrUtils v0.14
* qbsp: Added Quake 2 map compatibility (extra surface attributes ignored)
* qbsp: Add -2psb option to output in RMQ compatible BSP2 format
2013-09-30 TyrUtils v0.13
* Fix handling of func_group/detail entities with no solid brushes
* Fix automatic adding of animated texture frames
2013-09-29 TyrUtils v0.12
* Implement the Darkplaces (LordHavoc) style BSP2 format and use as default
* Still support the RMQ style BSP2 format (but don't create any new ones)
* qbsp: Fix bug causing sky brushes to be non-solid
2013-09-24 TyrUtils v0.11
* Support BSP2 format (qbsp requires the "-bsp2" command line option)
* qbsp: Fix animating texture bug when brushes are textured with alt-animations
* qbsp: Fix a crash in tjunc calculations
* qbsp: Exit with error if verticies exceed 65535 (BSP29 limit)
* qbsp: Add experimental "-forcegoodtree" command line option (thanks Rebb)
* vis: reduce "leaf recursion" error to a warning and continue processing
2013-04-25 TyrUtils v0.10
* Documentation added for bspinfo and bsputil
* Fix vis bug due to missing vertex copy in v0.9 portal clip changes
2013-04-24 TyrUtils v0.9
* qbsp: fixed bad pointfile generation
2013-04-23 TyrUtils v0.8
* qbsp: fixed surface edge corruption when using skip surfaces
* qbsp: fixed portal generation for transparent water and detail nodes
* qbsp: added "-noskip" option for troubleshooting skip related problems
* light: reduce "no model has face ###" to a warning
* vis: fix portal stack corruption in ClipStackWinding
* bsputil: added a "--check" option (beta!) to check internal data consistency
2013-04-10 TyrUtils v0.7
* Unix man page documentation for the main tools (qbsp, light, vis)
* HTML and text documentation is generated from the man page sources
* qbsp: added support for using WAD3 texture wads used by Hammer
* qbsp: include clip brushes when calculating bmodel bounding box
* qbsp: enable creation of clip-only bmodels
* qbsp: recognise and remove *waterskip, *slimeskip and *lavaskip surfaces
* qbsp: added hintskip texture support
* qbsp: fixed some bugs parsing empty func_group/func_detail entities
* light: implemented self shadowing and full shadows for brush models
* light: implemented the "-soft" command line option
* light: implemented the "-addmin" command line option
* light: implemented the "_anglescale" (aka "_anglesense") key and cmdline
* light: remove support for negative color components (never worked properly)
* light: removed the "-nominlimit" option (now the default behaviour)
* light: removed the "-compress" option (a bad idea from long ago)
* light: make -gate command line affect linear falloff lights as well
* vis: changed the default testlevel to 4
* vis: added the '-noambient*' options to disable auto ambient sounds.
2013-03-07 TyrUtils v0.6
* qbsp: respect floating point texture rotation and shift in map files
* qbsp: support for Valve's 220 map format used in later Worldcraft/Hammer
* qbsp: support func_group entities used by Radiant and similar editors
* qbsp: surfaces with the skip texture are now removed from the compiled bsp
* qbsp: hint brush support similar to Quake 2 for hand-tweaking the PVS
* qbsp: fixed a problem where leak files were not written for hull0 or hull1
* light: fixed a race condition in multithreaded coloured light processing
* light: fixed bug preventing use of all 4 light styles in a common case
* light: implemented attenutation formulae "delay" 4+5, ala Bengt's tools
* light: removed old bsp30 support
* light: lit files now automatically generated when coloured lights detected
* light: implemented 4x4 oversampling with -extra4 command line
* light: implemented the -gate option to help speed processing (default 0.001)
* light: implemented the "_softangle" key for spotlights
* light: implemented minlighting for brush models
2013-02-25 TyrUtils v0.5
* New changelog to summarise changes going forward
* light and vis both now multithreaded on Unix and Windows platforms
* vis now writes a state file every 5 minutes so it can resume if needed
* qbsp and vis now support a form of detail brushes, similar to Quake 2. See
qbsp.txt for further details.
* added a small optimisation to vis for a minor speedup (usually only 1-2%)
* build system re-written and lots of cleanups all over the code