Commit Graph

450 Commits

Author SHA1 Message Date
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 1d38ff0ff3 light: add -lightgrid_force_pot (power of two) 2023-02-18 20:15:47 -07:00
Eric Wasylishen c590400c46 light: lightgrid: add -lightgrid_force_cube 2023-02-18 19:15:34 -07:00
Eric Wasylishen 48fe527955 light: add _lightgrid_hint point entity key for customizing lightgrid bounds
use it as a info_null key: "_lightgrid_hint" "1"
2023-02-12 15:03:08 -07:00
Eric Wasylishen 7b8e55f594 light: move lightgrid code to its own file 2023-02-12 14:10:02 -07:00
Eric Wasylishen f399b95bb8 light: add octree experimental version of lightgrid lump 2023-02-10 08:54:30 -07:00
Eric Wasylishen 22be0c4077 light: add -lightgrid_format option. takes "cluster" or "uniform" 2023-02-10 00:56:21 -07:00
Eric Wasylishen 051cc29afb light: add operator== for lightgrid_samples_t 2023-02-10 00:29:14 -07:00
Eric Wasylishen 96c7658b80 light: nudge lightgrid points if stuck in solid 2023-02-07 00:56:27 -07:00
Eric Wasylishen aa831d9ac3 light: add -lightgrid_dist 2023-02-07 00:46:54 -07:00
Eric Wasylishen 284e5f1dec light: remove some Q_asserts on hot path 2023-02-07 00:26:37 -07:00
Eric Wasylishen 74f149627a light: finish implementing lightgrid_samples_t::add() to use lowest brightness slot 2023-02-05 21:52:25 -07:00
Eric Wasylishen 2cc513848b light: write styles into the experimental lightgrid lump 2023-02-05 17:16:57 -07:00
Eric Wasylishen 999806f150 light: experimenting with generating a lightgrid
currently a hardcoded 64^3 grid in a LIGHTGRID bspx lump
non-finalized, likely going to change the lump
2023-02-03 01:17:52 -07:00
Eric Wasylishen 13481438e7 light: use DecompressAllVis() for getting visdata 2023-01-30 19:57:20 -07:00
Eric Wasylishen 85e394a0ea light: cleanup unused function declarations 2023-01-30 19:56:15 -07:00
Jonathan df5f894726 fix _cone in Q2 2023-01-08 20:03:06 -05: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 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
Jonathan d5e29a1c90 add _nofill key, which causes an entity to not count as an entity for the purposes of occupancy (for lights in walls, etc)
add _nonudge key, to disabling nudging of lights "stuck" inside walls
2022-12-15 04:30:22 -05:00
Eric Wasylishen 8aa49699f8 light: rename channel mask keys
models:
_object_channel_mask

lights:
_light_channel_mask
_shadow_channel_mask
2022-12-13 23:20:27 -07:00
Eric Wasylishen 92d5c75424 light: experimental light channel mask feature 2022-12-13 19:13:58 -07:00
Eric Wasylishen 54e598c5fb light: clean up dead code 2022-12-12 18:02:33 -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 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 185d12996b Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp 2022-12-06 15:19:46 -07:00
Eric Wasylishen eae434736a light: support _minlightMottle on worldspawn 2022-12-06 15:18:16 -07:00
Jonathan 15b9a78fd1 fix gate being incorrect
add surflight grouping
fix minlight on color'd _surface lights
2022-12-05 20:35:44 -05:00
Eric Wasylishen e73aa29dd1 light: adjust epsilon to fix q2_light_flush.map test case 2022-12-04 00:10:01 -07:00
Eric Wasylishen 9fa9124404 light: redesign Q2 phong check
- always do angle check
- always do gamedef specific exclusions (e.g. warping surfflags don't phong with non-warping)
- if Q2 style phong is requested, but Q1 is not in use, use the default phong angle
- always do smoothing group ID check (preparation for supporting this in Q1 mode via a key)
2022-11-30 23:24:51 -07:00
Eric Wasylishen 37ced86cec tests: fix light settings not clearing across tests 2022-11-19 19:02:55 -07:00
Eric Wasylishen a5125583fa light: clear global data so light can run multiple times per process 2022-11-11 16:52:07 -07:00
Eric Wasylishen 74269a0269 light: new Mottle implementation based on world-space "value noise" 2022-11-08 22:18:54 -07:00
Jonathan 66d7ae98e5 half memory usage for lightmaps & ray colors 2022-11-06 02:21:11 -05:00
Eric Wasylishen ca0efbf3d3 light: wip -world_units_per_luxel and DECOUPLED_LM BSPX lump 2022-11-03 02:39:15 -06:00
Eric Wasylishen 0924423c20 light: header -> source move 2022-10-31 21:21:28 -06:00
Eric Wasylishen 39aacc89ef light: docs updates 2022-10-31 00:26:57 -06:00
Eric Wasylishen 383266762d light: lightsurf_t: remove texorg member 2022-10-30 19:40:26 -06:00
Eric Wasylishen 728fafde8c light: remove dead code 2022-10-30 18:00:48 -06:00
Eric Wasylishen da5910e732 tests: first steps on a light test case 2022-10-30 15:32:41 -06:00
Eric Wasylishen 35ffc00462 all: add LIGHT_/QBSP_/VIS_ prefixes to epsilons where necessary 2022-10-30 15:08:10 -06:00
Eric Wasylishen f9fc0fc478 light: remove dead code 2022-10-30 12:49:32 -06:00
Eric Wasylishen 636b376577 squash brushbsp-compilation-speedup branch
move function implementations out of headers
2022-10-21 18:00:58 -06:00
Jonathan 6713fedcbc allow changing a brushes' lightmap color scale with `lightcolorscale` 2022-09-10 19:04:17 -04:00
Jonathan 3564f6085d merge surface lighting and bounce code (wip) 2022-08-30 15:46:14 -04:00
Jonathan 4a85131f45 fix sky_surface being multiplied by 255 twice (normalize it as a color first) 2022-08-25 16:47:10 -04:00
Jonathan 384f74a0eb add separate "surflightskyscale" to handle the scale of sky lights; to help with doubling up with _sun
allow setSetting to report errors
print warnings on invalid worldspawn key values for light
fix setting_mangle not handling "pitch yaw" or "pitch" correctly
2022-08-25 16:30:15 -04:00
Jonathan 5fb0d56da7 maxlight
# Conflicts:
#	include/common/bspfile.hh
2022-08-24 21:50:11 -04:00
Jonathan 6345d6b616 add support for fast bounce lighting, which is the same as the old code 2022-08-21 22:12:41 -04:00