Commit Graph

71 Commits

Author SHA1 Message Date
Jarrod Doyle 00537fa3ca
Add AnimLightCutoff warning 2025-02-23 10:12:27 +00:00
Jarrod Doyle bb50b2aba4
Handle all light validation warnings in one place 2025-02-23 10:05:21 +00:00
Jarrod Doyle cfd1d7577c
Add zero brightness brush light warning 2025-02-23 09:41:07 +00:00
Jarrod Doyle 796b570347
Update 0 brightness light warning 2025-02-23 09:29:40 +00:00
Jarrod Doyle d4761ca682
Update overlit warning 2025-02-22 20:41:06 +00:00
Jarrod Doyle fbc24b855a
Warn about lights outside of the world 2025-02-22 20:38:38 +00:00
Jarrod Doyle 1c869bb123
Remove debug cell lighting log 2025-02-22 20:32:00 +00:00
Jarrod Doyle 170ec83fb1
Early out on light vis max range 2025-02-22 20:28:28 +00:00
Jarrod Doyle 18abe30b03
Calculate exact light to cell visibility by default
The old UsePvs flag has been renamed to FastPVS. The old default behaviour of not using any visibility culling has been removed, and the default is now an exact shrinking frustum algorithm.
2025-02-22 19:38:38 +00:00
Jarrod Doyle cab85f3ea1
Remove debug setting prints 2025-02-21 17:24:49 +00:00
Jarrod Doyle bd3178398c
Warn about 0 brightness lights 2025-02-21 17:24:13 +00:00
Jarrod Doyle b0ceb0f845
Close #16: Apply LmParams saturation 2025-02-21 16:53:57 +00:00
Jarrod Doyle f4d5dcbd5a
Apply LmParams attenuation 2025-02-16 11:44:02 +00:00
Jarrod Doyle 4827ffb76b
Extract light configuration validation to method and add check for aggressive inner radius usage 2025-02-02 08:42:22 +00:00
Jarrod Doyle fafae43c56
Don't try and compute visibility for lights outside of the world 2025-01-28 17:49:52 +00:00
Jarrod Doyle db0b1f9c7a
Pre-compute cell visibility in parallel 2025-01-28 17:35:52 +00:00
Jarrod Doyle 65c248de84
Add PVS flag 2025-01-26 17:54:09 +00:00
Jarrod Doyle 392c7b24b5
Add custom TinyEmbree package with backface culling 2025-01-26 17:27:31 +00:00
Jarrod Doyle cae43f12ad
Fix shadow acne on super shallow lighting angles 2025-01-26 12:55:20 +00:00
Jarrod Doyle c28626bf20
Rewrite occlusion checks to use different scenes where relevant 2025-01-26 12:35:35 +00:00
Jarrod Doyle 223aee980e
Slight GetTracePoints refactor 2025-01-26 12:33:01 +00:00
Jarrod Doyle 3f6ed89667
Build two scenes, one with objects and one without 2025-01-26 12:26:27 +00:00
Jarrod Doyle 6a7ee922b5
Fall back to a cast if clipping point to poly gives us something sucky 2025-01-15 22:16:52 +00:00
Jarrod Doyle a5078b0f2b
Use occlusion rays for non-sun tracing
More performant, no longer requires annoying fiddling to check distances, and removes the need for water surfaces in the mesh. Also reduces the number of edge case misses
2025-01-15 20:26:23 +00:00
Jarrod Doyle 4b3016d895
Combine plane facing and initial radius checks 2025-01-14 21:16:25 +00:00
Jarrod Doyle be95907352
Only use OD quad lighting when ShadowSoftness is Standard 2025-01-14 20:23:42 +00:00
Jarrod Doyle d7f6bfa0c3
Use larger epsilon for ray traces 2025-01-14 20:22:47 +00:00
Jarrod Doyle 74b175648b
Fix incorrect offset on 4 point softness modes 2025-01-14 19:24:25 +00:00
Jarrod Doyle 9bf80b1b5f
Additional logging around initialisation 2025-01-13 19:11:06 +00:00
Jarrod Doyle 5beba9f9f4
Handle dynamic lights correctly 2025-01-11 17:57:52 +00:00
Jarrod Doyle a0790f50bd
Fix performance regression. Discard Lights with 0 brightness 2025-01-11 17:17:12 +00:00
Jarrod Doyle 2ecf17400e
Replace console writes with logging 2025-01-11 13:16:31 +00:00
Jarrod Doyle 9c371b0d6f
PVS now works it's just slow as fuck 2025-01-06 20:50:35 +00:00
Jarrod Doyle 317b17ab02
Only cast to lights in the cell light list 2025-01-04 23:30:32 +00:00
Jarrod Doyle c37739b029
Make use of the PVS to reduce light casts 2025-01-04 23:08:18 +00:00
Jarrod Doyle 54c8176302
Set SpotlightInnerAngle to -1 on non-spotlights
It's a bit odd but it matches what DromEd does
2024-12-26 21:39:29 +00:00
Jarrod Doyle 2e1c90b88a
Close #10: Apply ambient light zones 2024-12-26 17:12:28 +00:00
Jarrod Doyle 42daa8a048
Apply AnimlightCutoff 2024-12-26 14:04:47 +00:00
Jarrod Doyle 196f739afd
Add anim light cutoff to lighting settings 2024-12-26 14:03:52 +00:00
Jarrod Doyle bf602a6964
Use anim light max brightness for light brightness 2024-12-26 14:03:24 +00:00
Jarrod Doyle 2cc5ab44b7
Set SpotAmb spotlight brightness 2024-12-26 14:02:01 +00:00
Jarrod Doyle a5571c9f76
Fix spotlight direction on models with only a light pos vhot 2024-12-26 13:23:07 +00:00
Jarrod Doyle 65dda0194d
Fix #1 #2: Rewrite light gathering
It's now much neater, has support for SpotlightAndAmbient, and uses proper vhot hierarchy transforms
2024-12-23 18:01:33 +00:00
Jarrod Doyle 8191d30b20
Update dromed lighting mode to objcast 2024-12-11 17:43:47 +00:00
Jarrod Doyle fc91970c45
Apply brush rotation to base spotlight direction 2024-12-10 19:51:08 +00:00
Jarrod Doyle 9fd33efeed
Add debug stats 2024-12-09 20:49:00 +00:00
Jarrod Doyle ed1b95af35
Properly apply rotation to light offsets 2024-12-09 20:22:49 +00:00
Jarrod Doyle 16dddcb497
Only add sunlight index to cells if sunlight is enabled 2024-12-09 19:03:20 +00:00
Jarrod Doyle df9b21de46
Close #7: Log when too many lights reach cell 2024-12-09 18:40:04 +00:00
Jarrod Doyle 518f387c43
Close #6: Don't add 0 brightness static lights 2024-12-09 18:32:32 +00:00