Commit Graph

227 Commits

Author SHA1 Message Date
Johan Mattsson 25f4611a24
Fix incorrect comparison 2023-08-13 13:16:55 +02:00
Johan Mattsson 966b8c33c7
Fix incorrect comparison 2023-08-13 13:15:43 +02:00
Johan Mattsson 006317da48
Remove repeated comparison 2023-08-13 13:13:20 +02:00
Johan Mattsson 4bbf42e667
Remove repeated comparison 2023-08-13 13:12:12 +02:00
Timothee 'TTimo' Besset c9fce466d1 Upgrade Windows project files to 2019 2022-11-24 18:19:08 -06:00
Hugo Locurcio 15c7549830
Fix build error on Linux due to missing `<stdint.h>` include
This closes #662.
2021-01-07 18:57:03 +01:00
Thomas Debesse 3aee572a96 Revert "q3map2 * fix: do not affect styled lightmaps by floodlight", fix #654
This reverts commit 090fbf3d0d.

The broken code is not there yet and therefore cannot be fixed yet.
2020-07-07 10:01:04 +02:00
Timothee "TTimo" Besset 8c397cb01f
Merge pull request #653 from illwieckz/fixinfinitebounce
q3map2/light_bounce: prevent infinite loop on obscure bias compute
2020-07-04 14:16:16 -07:00
Timothee "TTimo" Besset abeb2f1022
Merge pull request #652 from illwieckz/styledflood
q3map2: do not affect styled lightmaps by floodlight, fix #616
2020-07-04 14:12:47 -07:00
Timothee 'TTimo' Besset 6f98213cc2 Fix various duplicate definition link errors, picked up by gcc 10 2020-07-04 16:08:41 -05:00
Thomas Debesse eb5fe5bce9 q3map2/light_bounce: prevent infinite loop on obscure bias compute
New code produces same result without loop at all, so
it cannot fall in infinite loop, and it is faster in
use cases requiring more than one loop in previous code.

The Unvanquished vega map is known to trigger the bug:
https://github.com/UnvanquishedAssets/map-vega_src.dpkdir
I reproduced it multiple time on various hardware (8 core FX-9590,
12 core/24 thread Ryzen 9 3900X) with commit af40508 and using
final compilation profile edited to use -fastbounce instead
of -fast option.

The symptom is simple, q3map2 stucks there:

--- Radiosity (bounce 1 of 8) ---
--- RadCreateDiffuseLights ---
0...1...2...3..

Or somewhere else in that progression bar given your hardware
and the amount of core your CPU has.

When stuck, all the CPU cores are running 100% but the thread
never returns (a strace can reveals it, a gdb backtrace too).

Thanks to @slipher for the precious advices and improving my first
attempt to fix it.

For more information on the issue, I asked:

> which negative value never can become positive
> when incremented infinitely?

slipher said:

> for a double, any value less than -2^53 would have this property
> don't know for float off the top of my head

But then, it means that's theorically verified this loop was able
to run forever in some case.

I don't know what this code is doing anyway, but at least we can
keep the behaviour without requiring to understand it.
2020-07-03 08:12:48 +02:00
Garux 090fbf3d0d q3map2 * fix: do not affect styled lightmaps by floodlight
port of https://github.com/id-tech-3-tools/map-compiler/pull/12
87b8589a3a
2020-07-03 07:24:09 +02:00
TTimo 61bb386826 minor tweak 2018-04-21 14:01:04 -05:00
isRyven 3bf4b081cc fix q3map2 pak sorting 2018-03-25 00:29:41 +02:00
Rudolf Polzer 533587bf25 swap values 0 and 1 for -exposure (now -exposure 0 does nothing, -exposure 1 did what 0 did before) 2018-03-03 22:18:39 +01:00
Rudolf Polzer 06701fab69 netradiant/tools: ::zerowing-base=422
former commit name: ::zerowing-base=422
2018-02-25 23:46:54 +01:00
Rudolf Polzer b388770c65 netradiant/tools: initial
former commit name: initial
this commit only backports changes from tools/
2018-02-25 23:46:10 +01:00
Timothee "TTimo" Besset 4314e8336e
Merge pull request #594 from illwieckz/minimap
q3map2: import minimap stuff from NetRadiant
2018-02-24 16:31:19 -06:00
Thomas Köppe d19e3dd7a8 [q3map2] Avoid division by zero (remove removable singularity) 2018-02-23 14:10:01 +00:00
Thomas Debesse bf2da7441f reduce diff noise 2018-02-06 05:34:43 +01:00
Thomas Debesse 6649445a46 add missing minimap support for games 2018-02-06 05:34:06 +01:00
Thomas Debesse aa696e8cf8 do not delete q3map2_*.shader on minimap generation 2018-02-06 05:34:06 +01:00
Thomas Debesse 18f8b3a7f4 split minimap stuff from q3map2 2018-02-06 05:34:06 +01:00
Rudolf Polzer 83ff5cf016 mark two shader checks nullable 2018-02-06 05:34:06 +01:00
Rudolf Polzer d590a482aa no, we do NOT want to ignore caulk 2018-02-06 05:34:06 +01:00
Rudolf Polzer 3081387877 properly ignore caulk 2018-02-06 05:34:04 +01:00
Rudolf Polzer e089323ef2 PROPERLY ignore sky brushes for minimap 2018-02-06 05:13:53 +01:00
Rudolf Polzer 4d47b8ed5b -autolevel for minimap 2018-02-06 05:01:55 +01:00
divverent 2eb4247587 use warsow defaults for minimap in qfusion game
git-svn-id: svn://svn.icculus.org/netradiant/trunk@356 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent e0b28da14b qfusion now keeps aspect too
git-svn-id: svn://svn.icculus.org/netradiant/trunk@349 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 9f8d3f0a00 minimap: -boost = contrast boost (like in darkplaces)
git-svn-id: svn://svn.icculus.org/netradiant/trunk@348 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 0375a83f2b new modes for minimap: -black = black on transparent, -white = white on transparent, -gray = white on black
git-svn-id: svn://svn.icculus.org/netradiant/trunk@347 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 75ba6b77ec use "minimaps" directory for warsow
git-svn-id: svn://svn.icculus.org/netradiant/trunk@346 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 597e5b5eeb allow not keeping aspect
git-svn-id: svn://svn.icculus.org/netradiant/trunk@345 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 3ae3b20987 make minimap parameters game dependent
git-svn-id: svn://svn.icculus.org/netradiant/trunk@344 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent e5d5b5a866 option -border in minimap
git-svn-id: svn://svn.icculus.org/netradiant/trunk@343 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent cf607a4986 msvc shut up
git-svn-id: svn://svn.icculus.org/netradiant/trunk@342 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 4f58d60bc3 remove two debug prints
git-svn-id: svn://svn.icculus.org/netradiant/trunk@341 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent ac7d31060b fix a 0.5 error
git-svn-id: svn://svn.icculus.org/netradiant/trunk@340 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent a04a5b5fda probabilistic sample dispersion for minimap -samples
git-svn-id: svn://svn.icculus.org/netradiant/trunk@339 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent f701f2e268 make -minmax work
git-svn-id: svn://svn.icculus.org/netradiant/trunk@336 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent bde58c1edd simplify shader decision logic in MiniMapSetupBrushes
git-svn-id: svn://svn.icculus.org/netradiant/trunk@335 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 1b926fe925 ignore nonsolid brushes
git-svn-id: svn://svn.icculus.org/netradiant/trunk@333 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 858727133f naming fixes, allow ordered supersampling
git-svn-id: svn://svn.icculus.org/netradiant/trunk@332 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent ac00716877 command line options for minimap
git-svn-id: svn://svn.icculus.org/netradiant/trunk@331 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 48d3475f81 be compatible to nexuiz for minimaps :P
git-svn-id: svn://svn.icculus.org/netradiant/trunk@330 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:55 +01:00
divverent 12f2c1032c -minimap is now a main option... to be used on already compiled BSPs
git-svn-id: svn://svn.icculus.org/netradiant/trunk@329 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 05:01:53 +01:00
divverent 3597ccd239 unfinished -minimap support in bsp.c, do not use yet, format is not correct yet
git-svn-id: svn://svn.icculus.org/netradiant/trunk@328 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 04:59:44 +01:00
divverent cfeea25feb new options:
-bsp -deep - include detail brushes into BSP tree generation (but at lowest possible priority), but still ignore them for vis
-vis -mergeportals - only merge vis portals on the same plane, but don't merge clusters (much faster vis, but only slightly worse - will evaluate later why it's worse vis at all)

git-svn-id: svn://svn.icculus.org/netradiant/trunk@244 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 04:57:44 +01:00
divverent 9a44eb324f add an option -mergeportals to speed up vis, while not making the vis data MUCH worse
git-svn-id: svn://svn.icculus.org/netradiant/trunk@243 61c419a2-8eb2-4b30-bcec-8cead039b335
2018-02-06 04:36:43 +01:00