Eric Wasylishen
91734ac8f6
light: fix gcc9 build
2023-09-17 21:24:04 -06:00
Eric Wasylishen
e6d9605b86
light: fix lightgrid assertion failure if lightgrid gets a nan (separate bug)
2023-09-17 20:27:29 -06:00
Jonathan
0509c9a790
fix multiple bounce interaction with lightgrid
2023-09-16 11:55:10 -04:00
Jonathan
147be8f87a
some optimizations in indirect lighting code
...
multiple bounce support
2023-09-16 00:41:05 -04:00
Jonathan
5619e2abef
map file separation
2023-09-07 14:55:37 -04:00
Jonathan
7d881768fa
Revert "Revert "reduce memory usage by only storing VPLs when we need to, and only once""
...
This reverts commit 2e0e23622b .
Disable rescale by default on sky faces.
Light is now in control of rescales' default value.
Multiply omni light faces by 0.5 to better match qrad3
Remove some asserts to increase perf
2023-09-04 02:51:20 -04:00
Jonathan
2e0e23622b
Revert "reduce memory usage by only storing VPLs when we need to, and only once"
...
This reverts commit fcf39b2ef8 .
# Conflicts:
# include/light/light.hh
# include/light/surflight.hh
# light/bounce.cc
# light/light.cc
# light/ltface.cc
# light/surflight.cc
2023-08-26 23:03:25 -04:00
Eric Wasylishen
1c85bb882a
light: minimize includes
2023-06-26 01:19:54 -06:00
Eric Wasylishen
fbea58d679
code formatting pass
2023-06-25 18:29:48 -06:00
Jonathan
caa7418375
async threading for map progress, etc. no cancelling yet
2023-06-19 15:38:16 -04:00
Jonathan
08db6e9bf9
remove fastbounce, add emissivequality
...
emissivequality affects both emissives
2023-06-19 09:54:25 -04:00
Jonathan
1fbe12767e
decouple lightmapping state from emissive state
...
allow sky to skip lightmapping if lightgrid is enabled in Q2 mode again
2023-06-19 04:11:20 -04:00
Jonathan
94357818f9
experiment with keeping sample data all together in memory, which might help caching. not certain.
2023-06-18 14:06:58 -04:00
Jonathan
fcf39b2ef8
reduce memory usage by only storing VPLs when we need to, and only once
...
fix visapprox auto not actually being auto
2023-06-18 13:29:53 -04:00
Eric Wasylishen
1c6a76e1f8
light: autominlight extensions
...
- now apply per-luxel, not just to faces that are fully occluded
- add "_autominlight_target" key for specifying a target
to take the light sample from
- add "_autominlight" key: 0 = force off, default = apply to occluded luxels, 1 = apply to all luxels
wip / subject to change!
2023-06-16 00:14:27 -06:00
Jonathan
0c8c10f553
post-process phase, so minlight doesn't affect emissives
2023-06-10 14:20:53 -04:00
Eric Wasylishen
895a28584c
light: experimental autominlight for solid black sides of doors
2023-05-11 00:17:47 -06:00
Eric Wasylishen
290af832af
style: rename dirt related member variables to match the actual names
2023-05-08 23:02:59 -06:00
Jonathan
39a54abfc6
add support for a region brush (code needs to be cleaned up a bit though)
...
allow _surflight_style on brush models
2023-04-28 13:31:50 -04:00
Jonathan
6035290c70
Merge branch 'brushbsp' of https://github.com/ericwa/ericw-tools into brushbsp
...
# Conflicts:
# include/common/imglib.hh
# light/entities.cc
# light/light.cc
# light/surflight.cc
2023-04-24 02:19:04 -04:00
Jonathan
dddc48e98b
simplify `needs_write` for surfflags
...
add `_surflight_color` key; allows overriding surface light color on an entity basis
load the .wal from wal_json and use the values as a base, if they exist
allow `_surflight_minlight_scale` to be specified on entities
2023-04-24 02:16:39 -04:00
Eric Wasylishen
e069d7b9b8
style: update settings api to follow current coding style
2023-04-16 11:55:38 -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
Jonathan
5daaeee6fb
allow `surflight_minlight_scale` to be specified per brush
2023-03-26 18:29:37 -04:00
Eric Wasylishen
adb7ecce15
light: remove -lightgrid_force_cube, -lightgrid_force_pot
2023-03-04 14:43:04 -07:00
Eric Wasylishen
6c3fd1503f
light: remove -lightgrid_format uniform, cluster
2023-03-04 14:41:59 -07:00
Eric Wasylishen
f0749450d3
light: support -extra for lightgrid
2023-03-04 11:05:50 -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
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