Commit Graph

215 Commits

Author SHA1 Message Date
Eric Wasylishen a70c8f4835 light: fix artifacting with translucent shadows
Embree is allowed to call the filter function more than necessary.
The previous implementation had side effects that would cause
the translucent shadows to get darker in this case.

As a limitation, we're back to only allowing 1 layer of glass per ray.
2022-12-07 00:23:26 -07:00
Eric Wasylishen 7ce14a376f qbsp/light: make liquids not cast shadows by default
previously opaque Q2 liquids (e.g. lava, opaque water) were casting shadows / dirt
2022-12-06 17:03:39 -07:00
Eric Wasylishen eae434736a light: support _minlightMottle on worldspawn 2022-12-06 15:18:16 -07:00
Eric Wasylishen 555f07ed61 test_lftace: add a test for an issue of wrapped luxels interacting with surface lights 2022-12-03 14:27:00 -07:00
Eric Wasylishen 1065adecc6 qbsp/light: implement _phong_group key, equivalent to Q2 "value" field 2022-12-01 00:25:05 -07:00
Eric Wasylishen 96bdf141bb light: block phong if certain surfflag bits differ between the two faces
this prevents liquids from phonging with solids
2022-11-30 22:15:58 -07:00
Eric Wasylishen abb92d4b0f qbsp: fix crash when using -omitdetail and an all-detail bmodel 2022-11-21 01:13:31 -07:00
Eric Wasylishen 5d3fab75b6 light: allow .wal_json metadata to contain "light": [ r, g, b ] to override emissive color
Use this to fix the "emissive lights" test case so it can run on CI without any texture data
2022-11-20 23:01:05 -07:00
Eric Wasylishen 0c4aab737d light: fix angled emissive surfaces not shining on adjacent faces 2022-11-19 14:57:56 -07:00
Eric Wasylishen 46d460277a ltface: support -world_units_per_luxel without -novanilla
first pass implementation - quality of vanilla LM is bad, due to nearest sampling
the decoupled lightmap
2022-11-14 23:58:31 -07:00
Eric Wasylishen d7acd046c3 light/qbsp: add _surflight_rescale key 2022-11-12 17:07:02 -07:00
Eric Wasylishen 93d059058f testqbsp: fix mirrorinside + bmodels in Q1 mode 2022-11-11 12:33:47 -07:00
Eric Wasylishen e6cec0eb5e qbsp: fix _mirrorinside 0 in q2 mode 2022-11-06 23:53:06 -07:00
Eric Wasylishen 5e0431adbd add testcase where detail causes a "vis leak"
this is due to detail sealing
2022-11-06 23:30:08 -07:00
Eric Wasylishen da5910e732 tests: first steps on a light test case 2022-10-30 15:32:41 -06:00
Eric Wasylishen 22b9329489 testmaps: add q2 lighting testmap 2022-10-29 20:35:10 -06:00
Eric Wasylishen 27045404d3 tests: add CSGFaces basic test 2022-10-23 19:20:19 -06:00
Eric Wasylishen 501ced4bfe qbsp: restore func_detail_wall support 2022-10-21 18:33:38 -06:00
Eric Wasylishen 74996f97d2 light_q2_translucent_shadow.map: add WINDOW test cases 2022-10-19 00:22:41 -06:00
Eric Wasylishen c78b0396a9 light: fix wrong opacity of trans33/trans66 translucent shadows
- support _light_alpha key in q2 mode
- add q2 translucent shadows testmap
2022-10-19 00:00:47 -06:00
Eric Wasylishen 8bfd11ba13 testqbsp: add a obj2map terrain test case
some terrain I created in Blender
2022-09-26 22:40:09 -06:00
Eric Wasylishen e081e36d28 testmaps: add retrojam1_ericw.map 2022-09-16 23:19:32 -06:00
Eric Wasylishen 68e2f97fbf qbsp: sync FindAreas to Quake-2-Tools version
fixes area portals in cases when area has no point entities in it
2022-09-10 15:49:17 -06:00
Eric Wasylishen a8a8966e28 test_qbsp: add failing test for 0.125 unit wide faces (currently not generated) 2022-09-08 23:51:51 -06:00
Eric Wasylishen c8c526ab57 qbsp: fix mist-clip intersection chopping up the faces
note it makes the simple_worldspawn_detail clipnodes count
test fail. Clipnode counts are way too high in general so this isn't
a huge issue yet.
2022-08-28 14:13:14 -06:00
Eric Wasylishen d9856230a6 testqbsp: q1_rocks: sky -> solid to simplify test case 2022-08-20 01:24:10 -06:00
Eric Wasylishen f3a2d99544 testqbsp: adjust q1_rocks test case
avoid potential ambiguity for BrushBSP over whether sky should split wall brushes
2022-08-20 00:22:21 -06:00
Eric Wasylishen 251a6dc7ca testmaps: add a more minimal q1_rocks that's just a cube 2022-08-19 22:55:27 -06:00
Eric Wasylishen 648ffab77b testqbsp: improve q1_rocks test 2022-08-19 22:10:16 -06:00
Eric Wasylishen 10051ceff5 testmaps: remove some accidental brushes in q1_hull_expansion_lip.map
testqbsp: more detailed q1_hull_expansion_lip tests for clipnodes

testqbsp: decompile hull1 of testmaps by default

testqbsp: corrections to the q1_hull_expansion_lip.map expectation

adjust gitignore
2022-08-19 20:49:59 -06:00
Eric Wasylishen 832ab0ee94 testqbsp: q1_hull_expansion_lip.map: move detail to world as a temp workaround
for -debugexpand only expanding world brushes
2022-08-19 01:14:38 -06:00
Eric Wasylishen 8ce72efba2 testmaps: add q1_hull_expansion_lip.map
which is getting incorrectly expanded
2022-08-16 00:35:47 -06:00
Eric Wasylishen d88bedd153 testqbsp: add q1_rocks.map test with obj2map style brushes 2022-08-15 01:07:47 -06:00
Eric Wasylishen 244399b6f7 testqbsp: make q1_hull1_content_types seal in hull1/2 2022-08-14 21:40:49 -06:00
Eric Wasylishen 0642ad16d3 testqbsp: start a hull1 content type test 2022-08-14 18:14:56 -06:00
Eric Wasylishen 35859a6ea4 tests: add q1_wad_mapname test 2022-08-14 13:45:31 -06:00
Eric Wasylishen 995ac04673 tests: add a few clipnode count tests
adjust qbsp_simple_worldspawn_detail.map so it seals in hull1/2
2022-08-13 20:11:22 -06:00
Eric Wasylishen e05a2bdf75 qbsp: "-add additional.map" feature 2022-08-01 19:13:10 -06:00
Eric Wasylishen f665cd5cb6 testqbsp: rename our copy of base1.map to base1-test.map
for easier loading in game in Q2
2022-07-31 21:29:25 -06:00
Eric Wasylishen a2451a41fb qbsp: rewrite of q1 contents representation in bspfile.cc
use q2-like bitflags so we can represent mixes like (water | mist), which we need within the compiler
2022-07-27 02:31:49 -06:00
Eric Wasylishen 7f955a5247 testmaps: add q1_tjunc_angled_face 2022-07-13 00:59:46 -06:00
Eric Wasylishen 6d847fed85 testqbsp: rename quake map source to have -test suffix, for easier loading in an id1/maps directory
otherwise vanilla engines will load the original .bsp's from the pak files
2022-07-12 23:13:46 -06:00
Eric Wasylishen 54a6762a05 qbsp: add edge sharing test 2022-07-10 01:25:28 -06:00
Eric Wasylishen c2a2890240 testqbsp: add texture metadata for some of the base1.map special textures
so we can compile a working version of the map
2022-07-07 01:21:50 -06:00
Eric Wasylishen 862d9bd5f2 testqbsp: add q1_clip_func_wall
Ensure submodels that are all "clip" get bounds set correctly
2022-06-30 00:53:02 -06:00
Eric Wasylishen 84263ef1a1 testqbsp: add model bounds test map 2022-06-22 22:11:40 -06:00
Eric Wasylishen 98e27cf620 testqbsp: improve water_detail_illusionary test 2022-06-21 01:16:55 -06:00
Eric Wasylishen 59d6169b3d qbsp: add a test of just a cube 2022-06-19 16:04:54 -06:00
Eric Wasylishen bf36bd56f7 qbsp: fix qbsp_q1_sealing test case 2022-06-14 02:03:50 -06:00
Eric Wasylishen a309e8467b testmaps: add qbsp_q1_sealing.map 2022-06-14 00:44:50 -06:00