Commit Graph

64 Commits

Author SHA1 Message Date
Jarrod Doyle 0bcf24f640
Remove unneeded using directives 2024-10-05 15:00:47 +01:00
Jarrod Doyle 3fa86a233f
Use TryGetChunk everywhere 2024-10-05 14:57:40 +01:00
Jarrod Doyle ab738203d6
Reset lighting table and lightmaps 2024-10-05 14:52:09 +01:00
Jarrod Doyle ea72c3af4a
Make LightmapInfo a class 2024-10-05 14:51:31 +01:00
Jarrod Doyle 013a3b845a
Make Cell and LightTable classes 2024-10-05 14:35:07 +01:00
Jarrod Doyle 25e8e50f5e
Add DbFile TryGetChunk method 2024-10-05 14:33:53 +01:00
Jarrod Doyle b9eae0e437
Split lightmap pixels array into layers 2024-10-04 18:49:37 +01:00
Jarrod Doyle 9251685d26
Handle subtractive lights 2024-09-29 14:46:46 +01:00
Jarrod Doyle bc01e91dbc
Fix not applying spotlight settings 2024-09-29 11:53:14 +01:00
Jarrod Doyle 7ec7f71239
Slightly handle unfound models 2024-09-29 11:27:36 +01:00
Jarrod Doyle 47d95307b5
Use existing lighttable info to apply anim lights 2024-09-29 11:03:26 +01:00
Jarrod Doyle 69b29c15f6
Fix incorrect anim light brightness and light table mapping 2024-09-29 11:02:47 +01:00
Jarrod Doyle 93410a46d5
Gather anim lights 2024-09-29 10:39:40 +01:00
Jarrod Doyle 6efceff852
Fix incorrect AnimLight prop write 2024-09-29 10:30:23 +01:00
Jarrod Doyle 067cd2cc00
Slight light gather refactor 2024-09-29 10:22:43 +01:00
Jarrod Doyle b57d15f6f0
Remove outdated comment 2024-09-29 10:14:46 +01:00
Jarrod Doyle bd72554b9a
Add ability to not inherit properties 2024-09-29 10:09:09 +01:00
Jarrod Doyle 46fe99bbfc
Parse AnimLight property 2024-09-29 09:52:12 +01:00
Jarrod Doyle 8b7ffcd7a3
Recalculate TOC on write 2024-09-27 17:46:10 +01:00
Jarrod Doyle bcc60eff52
Add BSP tree and LightTable parsing 2024-09-27 17:42:28 +01:00
Jarrod Doyle d7fcf7a2d8
Add model vhots and model light offset/dir 2024-09-26 20:25:01 +01:00
Jarrod Doyle 2420bbef4f
Handle spotlight property 2024-09-26 17:16:11 +01:00
Jarrod Doyle 51e3a3a9e7
Add prop spotlight parsing 2024-09-26 16:45:48 +01:00
Jarrod Doyle 22600a27e5
Add inner radius support 2024-09-26 16:03:50 +01:00
Jarrod Doyle cb526c634c
Make lighting use all cores 2024-09-26 13:10:42 +01:00
Jarrod Doyle dca1b1e5ed
Extract light strength calculation to method in prep for inner radius handling 2024-09-26 12:12:14 +01:00
Jarrod Doyle dcecc33bcd
Handle HDR and light strength multiplication in AddLight 2024-09-26 12:04:58 +01:00
Jarrod Doyle 196e97a8fd
Apply light property position offset 2024-09-25 18:50:30 +01:00
Jarrod Doyle fa360b02cc
Remove ClipPoly3d 2024-09-25 18:39:51 +01:00
Jarrod Doyle b480753c13
Share 2d mapped points of poly across all light calculations 2024-09-25 18:39:40 +01:00
Jarrod Doyle ef32b47e02
Implement plane mapper struct and use it in clipping functions 2024-09-25 18:25:54 +01:00
Jarrod Doyle 422630c2d9
Neaten up ClipPointToPoly3d 2024-09-25 17:43:31 +01:00
Jarrod Doyle 2c74cc5594
Replace epsilon usages with constant 2024-09-25 17:39:44 +01:00
Jarrod Doyle 5957b5b53f
Apply HDR mapping to ambient light 2024-09-24 21:48:45 +01:00
Jarrod Doyle ce7002477e
Mostly fix missed raycasts 2024-09-24 21:13:02 +01:00
Jarrod Doyle 49a1b4bfcc
More accurate handling of lights hitting the luminance limit 2024-09-24 18:43:33 +01:00
Jarrod Doyle ca43e6f8a5
Correctly handle light strength close to light source 2024-09-24 17:07:35 +01:00
Jarrod Doyle 860080ada3
Add HDR lightmap support 2024-09-24 16:16:50 +01:00
Jarrod Doyle d144bdb6e9
Add Sphere AABB intersection test 2024-09-24 08:55:05 +01:00
Jarrod Doyle edd01952e7
Discard planes that don't intersect with sphere 2024-09-24 08:19:14 +01:00
Jarrod Doyle ead1943820
Add math utility class 2024-09-24 08:11:35 +01:00
Jarrod Doyle 10a8a31520
Add light falloff and diffuse angle 2024-09-23 20:32:47 +01:00
Jarrod Doyle e004292e53
Handle object lights with radius 0 2024-09-23 18:08:21 +01:00
Jarrod Doyle 63133da6a4
Time everything 2024-09-23 16:57:02 +01:00
Jarrod Doyle 94286e134f
Add timing class from TMV 2024-09-23 16:56:47 +01:00
Jarrod Doyle d5664b2614
Swap chunk merging so we're not making the mission chunks too big 2024-09-23 16:43:20 +01:00
Jarrod Doyle 68eed0a821
Remove debug print 2024-09-23 08:24:55 +01:00
Jarrod Doyle 3a445ef6d8
Add light radius check 2024-09-23 08:19:29 +01:00
Jarrod Doyle 8bde33ebf2
Simplify lightmap origin calculation and adjust to cast from center of pixel 2024-09-23 07:57:59 +01:00
Jarrod Doyle f4c4237306
Per lightmap pixel raycasting 2024-09-23 07:51:07 +01:00