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
Jarrod Doyle
1b962831a0
Normalise sunlight direction
2024-12-09 15:23:47 +00:00
Jarrod Doyle
7693261cd7
Add the sun to every cell's light list
2024-12-09 15:22:43 +00:00
Jarrod Doyle
b34131f3b5
Add sunlight casting
2024-12-09 14:35:53 +00:00
Jarrod Doyle
c2b69cda46
Swap inner and outer pixel tracing loop
2024-12-09 12:28:52 +00:00
Jarrod Doyle
27f8dab8fe
Refactor tracing to separate ray points
2024-12-09 12:04:32 +00:00
Jarrod Doyle
9daaa3b73b
Improve note about door light blocking
2024-12-09 10:27:32 +00:00
Jarrod Doyle
5538a0e3ea
Include door blocking in the cast mesh
2024-12-09 10:09:13 +00:00
Jarrod Doyle
adf61c0f6f
Move more meshing to MeshBuilder
2024-12-09 08:37:46 +00:00
Jarrod Doyle
a0b287b9fa
Separate some mesh stuff
2024-12-09 08:19:50 +00:00
Jarrod Doyle
39dbede993
More accurate object casting
2024-12-07 18:47:31 +00:00
Jarrod Doyle
1532a2750c
Almost there object casting
2024-12-07 18:28:39 +00:00
Jarrod Doyle
84c54ce280
Use AABB for a tighter cull of cell light indices
2024-11-29 17:24:03 +00:00
Jarrod Doyle
b3a71e6827
Add lightmapped water
2024-11-04 18:39:10 +00:00