Commit Graph

62 Commits

Author SHA1 Message Date
Eric Wasylishen 8034215b3a tests: add "minlight doesn't bounce" test 2023-06-10 16:36:17 -06:00
Eric Wasylishen 502a490e5b light: hack around surface lights getting a black spot when a luxel lines up with a surflight emission point 2023-06-06 22:29:51 -06:00
Eric Wasylishen d38ef2d8af qbsp: allow _litwater/_splitturb as a bmodel key
supports both opt-in and opt-out
2023-05-28 23:44:57 -06:00
Eric Wasylishen a73075234e light: fix inheriting worldspawn _minlight_color by bmodels 2023-05-08 00:24:53 -06:00
Eric Wasylishen d9e16a943a qbsp: add -noextendedsurfflags flag to suppress .texinfo writing (for testing/debugging) 2023-05-07 23:56:30 -06:00
Eric Wasylishen 3e446e6ea6 qbsp, light: fix inheriting minlight from worldspawn
Update q2_light_group.map to support this
2023-05-07 21:44:29 -06:00
Eric Wasylishen cfd3336644 test: lightmap artifacts on a low luxel scale 2023-04-30 17:53:19 -06:00
Eric Wasylishen 5f7e08d0ef light: CalcPoints: fix check for luxels being too far from the face to be visible 2023-04-29 19:52:31 -06:00
Eric Wasylishen fa7da0b4a2 tests: add test where CaclPoints + low luxel scale fails 2023-04-29 17:14:43 -06:00
Eric Wasylishen 984d00c5a9 tests: mark q1_lightignore as mayfail until it's investigated 2023-04-16 11:43:24 -06:00
Eric Wasylishen 93f985a9e5 tests: add q1_lightignore.map test 2023-04-12 00:04:56 -06:00
Eric Wasylishen addc6e922b tests: add test case for culling of surface lights in the void 2023-04-09 12:39:19 -06:00
Eric Wasylishen c2a787f6a3 light: add missing model offset for luxel occlusion check against bmodels with origin brush 2023-04-08 12:37:44 -06:00
Eric Wasylishen 8438232d99 tests: add a first test case for vis 2023-02-20 16:37:04 -07:00
Eric Wasylishen f8b189c527 light: fix sample occlusion / object channel mask interaction 2023-02-20 01:03:12 -07:00
Eric Wasylishen dd6e49c89f light: support _object_channel_mask on func_group 2023-02-20 00:07:08 -07:00
Eric Wasylishen eda6155844 cleanup: run ./clang-format-all.sh
clang-format version 15.0.7
2023-02-18 22:59:43 -07:00
Eric Wasylishen 8516bfb5e2 light: skip lightmapping sky faces if lightgrid is in use 2023-02-17 17:41:49 -07:00
Eric Wasylishen 8cc7b0e3f3 light: add test for sky getting an optimized lightmap 2023-02-17 00:24:08 -07:00
Eric Wasylishen 641fb780ac light: allow customizing _world_units_per_luxel on func_group etc. 2023-02-17 00:07:43 -07:00
Eric Wasylishen 23e98c0e94 test: remove unwanted doctest::may_fail() from light tests 2023-01-29 16:53:23 -07:00
Eric Wasylishen 6ede7925bc light: apply model offset to embree meshes
Fixes shadows in incorrect places when using shadow-casting rotators
Fixes https://github.com/ericwa/ericw-tools/issues/326
2023-01-24 20:18:14 -07:00
Eric Wasylishen 83d3774714 tests: hack for spurious test failure on CI only 2023-01-24 01:40:21 -07:00
Eric Wasylishen 2d64108ea4 light: add basic test case for _sun 1 entities 2023-01-24 00:57:26 -07:00
Eric Wasylishen fa8af3845b light: fix default _sunlight angle to be pointing straight down 2023-01-24 00:52:28 -07:00
Eric Wasylishen ee5c016b57 fix macOS build 2023-01-08 20:43:31 -07:00
Eric Wasylishen a497254874 tests: add q2 light cone test 2023-01-08 20:26:32 -07:00
Eric Wasylishen a2399ab48c tests: add dirt / object_channel_mask interaction test
was already working correctly
2023-01-08 19:59:19 -07:00
Eric Wasylishen a9a11159f4 light: add _surface_minlight_scale light key
for tweaking minlight given to faces matching surface light templates.

minlight = _surface_minlight_scale * light

lower default from 64 to 1 in q1 mode
2022-12-30 23:06:28 -07:00
Eric Wasylishen 20af42c9aa test_ltface: disable "surface lights minlight" test for now 2022-12-21 01:10:39 -07:00
Eric Wasylishen 3d0c756b4f light: fix minlight color on surface lights
- extra `* 255` was unnecessary, setting_color already does this
- don't use qvec3b as it was causing colors to wrap around the 0..255 range
2022-12-20 23:44:21 -07:00
Eric Wasylishen 108d299482 test_ltface: test case for minlight surflight 2022-12-20 22:54:22 -07:00
Eric Wasylishen f652af9c7d bsputils: add .lit loader 2022-12-20 22:46:20 -07:00
Eric Wasylishen bf75ae8717 test_ltface: refactor to allow q1 tests as well 2022-12-20 00:19:05 -07:00
Eric Wasylishen 8caaf7236f test: add q2 test case for alpha mask textures 2022-12-14 23:19:58 -07:00
Eric Wasylishen 82aa1e4396 light: make "_light_alpha 0" behave as expected (invisible to light) 2022-12-14 21:46:36 -07:00
Eric Wasylishen 513c47406b light: fix surface lights to check channel mask 2022-12-14 00:26:38 -07:00
Eric Wasylishen 287ac96363 light: fix sunlight to check object channel mask 2022-12-14 00:15:23 -07:00
Eric Wasylishen ccb72a3bf5 light: expand test case for light channels 2022-12-13 23:42:26 -07:00
Eric Wasylishen 63cac32f88 light: quick experiment with a _light_group feature for lights that only affect linked bmodels 2022-12-11 15:36:08 -07:00
Eric Wasylishen bded0ab344 light: fix negative lights breaking when bounce in use 2022-12-10 15:10:36 -07:00
Eric Wasylishen a5b83e088b light: work around visblocking opaque liquids causing light artifacts with -visapprox vis
in cases when we actually want light to shine through these surfaces
2022-12-09 00:07:50 -07:00
Eric Wasylishen 924847661c test_ltface: add test for `-visapprox vis` issue with opaque liquids 2022-12-08 21:46:35 -07:00
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 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 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 047973a30a test_ltface: "emissive lights": disable test until we have a fix for needing real texture data 2022-11-19 19:37:42 -07:00