Commit graph

165 commits

Author SHA1 Message Date
Magnus Norddahl
7bc2ed5436 Remove the submesh class as that caused more problems than it solved 2024-01-29 21:56:42 +01:00
Magnus Norddahl
5f3737f7ca Add cvar for ignoring the lightmap lump 2024-01-17 01:47:52 +01:00
Magnus Norddahl
e7763c8ff0 Ignore extra lightmap tiles generated by zdray 2024-01-17 01:43:14 +01:00
Magnus Norddahl
ee7771f71f ZDRay lump loading adjustments 2024-01-16 12:42:58 +01:00
Magnus Norddahl
805bce1166 Merge remote-tracking branch 'gzdoom/master' 2024-01-10 04:03:35 +01:00
Christoph Oelckers
ea65768e0b fixed compile errors. 2024-01-07 12:28:21 +01:00
Christoph Oelckers
f13ae3b706 addressed a few things pointed out by static analysis
* marking move assignments noexcept
* using [[fallthrough]] consistently.
* getting rid of alloca.
2024-01-07 08:46:47 +01:00
Magnus Norddahl
48b6a7ec46 Split level mesh surface from lightmap tiles as we have multiple surfaces per tile 2023-12-26 04:31:00 +01:00
Magnus Norddahl
1f6356f414 Plane shadow vertices must be created after the level mesh, otherwise they do not receive the lightmap UV coordinates 2023-12-26 04:31:00 +01:00
Magnus Norddahl
4ae767cc5a Fix polyobj planes ending up in the level mesh 2023-12-26 04:31:00 +01:00
Magnus Norddahl
4ca2ffd58e Implement line portals and improve sky handling 2023-12-26 04:31:00 +01:00
Magnus Norddahl
412be46e08 Misc surface and lightmapper related cleanup and renaming 2023-12-26 04:30:59 +01:00
Magnus Norddahl
75e33c4923 Move portal creation out of the submesh 2023-12-26 04:30:58 +01:00
Magnus Norddahl
bdda16a4f0 Fixes that got lost in the rebase 2023-12-26 04:30:58 +01:00
Magnus Norddahl
26b9c52427 Move halffloat to utility 2023-12-26 04:30:58 +01:00
Magnus Norddahl
6a77924207 Group mesh buffers 2023-12-26 04:30:58 +01:00
Magnus Norddahl
ac212e0147 Use HWFlat for ceilings and floors 2023-12-26 04:30:57 +01:00
Magnus Norddahl
9f963e2c06 Rename lightmap fields to surface as it is being used for more than lightmaps now 2023-12-26 04:30:56 +01:00
Magnus Norddahl
4f4d859fd9 Move some code 2023-12-26 04:30:56 +01:00
Magnus Norddahl
240d68d7ae Merge SurfaceVertex with FFlatVertex and draw the lightmaps 2023-12-26 04:30:54 +01:00
Christoph Oelckers
9bcbdfa09c take OpenDecompressor out of FileReader and fixed exploding decompression 2023-12-14 17:22:32 +01:00
Christoph Oelckers
292705ddc3 fixed OpenDecompressor flag handling. 2023-12-14 17:22:31 +01:00
Magnus Norddahl
58381ec762 Use a TArrayView for the lightmap arrays 2023-12-07 12:48:48 +01:00
Magnus Norddahl
e75e5a387b Merge remote-tracking branch 'gzdoom/master' into merge-gzdoom 2023-10-19 21:05:17 +02:00
Magnus Norddahl
9a334570f0 Add lm_dynamic UDMF boolean on sectors for marking if a sector should update its lightmap dynamically 2023-10-17 19:10:39 +02:00
dpjudas
411b281e7c Remove multithreading RenderState as that seemed to be a poor approach 2023-10-09 03:20:19 +02:00
Christoph Oelckers
7a5a2858a2 yet even more GetChars calls added. 2023-10-07 23:29:24 +02:00
Magnus Norddahl
697e7982a7 Turn off lightmaps for levels that have none 2023-10-03 18:24:11 +02:00
Magnus Norddahl
bcea260f33 Fix misc bugs related to the dynamic lightmap and polybsp lines in the lightmapper 2023-10-02 02:40:40 +02:00
Magnus Norddahl
7bc52386f9 Make doom specific surface fields private to doom 2023-09-30 21:33:07 +02:00
Magnus Norddahl
65929d021f Add support for multiple meshes (DoomLevelSubmesh) 2023-09-25 23:28:49 +02:00
Magnus Norddahl
9e136a7e79 Fix maploader warning 2023-09-19 00:46:20 +02:00
RaveYard
dc936ed32b Use LIGHTMAP lump surface dimensions before packing the lightmap atlas 2023-09-18 16:36:09 +02:00
RaveYard
2f1acda776 Optimize lightmap lump loading 2023-09-18 16:36:09 +02:00
Christoph Oelckers
ea51c92fda - validate partner seg index in LoadGLZSegs before using it
KDiZD Z1M10 has something bogus in there, this case will now trigger a node rebuild.
2023-09-16 09:48:43 +02:00
RaveYard
d609396e3b Add ton of debug code hidden under 'developer' cvar for lightmap lump loading and other error detection measures 2023-09-15 10:43:56 +02:00
RaveYard
315475156c Add error detections when the surfaces sizes do not match 2023-09-15 10:43:56 +02:00
RaveYard
e265be959a Enforce ZDRay limit on default sampledistance when loading LIGHTMAP to avoid surface size mismatches. 2023-09-15 10:43:56 +02:00
RaveYard
5a55033ef7 Use UVs from the lightmap 2023-09-15 10:43:56 +02:00
RaveYard
05964f3c8e Initial implementation of V2 lightmap lump loading 2023-09-15 10:43:56 +02:00
RaveYard
476c98fdfa Fix edge case where the lightmap lump surface touches the edge of the atlas page 2023-09-13 21:58:11 +02:00
RaveYard
22368c0f40 Clean unused code 2023-09-13 21:58:11 +02:00
RaveYard
c05376c273 Fix variety of bugs and assume that any surface not contained in LIGHTMAP lump does not need updating 2023-09-13 21:58:11 +02:00
RaveYard
c6b92e1c1b Initial implementation for lightmap lump loading 2023-09-13 21:58:11 +02:00
RaveYard
0faacaaf0f Fix InitLevelMesh called before line portals are set 2023-09-05 17:54:11 +02:00
RaveYard
036debfac6 Sector portals sunlight only 2023-09-05 17:43:38 +02:00
RaveYard
6a579396b5 Read ZDRay info thing 2023-09-04 12:59:44 +02:00
RaveYard
8329fe9e3c Read lm_sampledist properties from map geometry 2023-09-04 12:59:44 +02:00
Magnus Norddahl
558867a49f Move surface linking into DoomLevelMesh 2023-09-01 00:13:22 +02:00
Magnus Norddahl
cff50b8087 Initialize lightmap texture in SetLevelMesh
Create VkLightmap class on VulkanRenderDevice
2023-09-01 00:03:18 +02:00