Commit graph

244 commits

Author SHA1 Message Date
Magnus Norddahl
421b8532ff Split into more files 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
486a08e882 Create VkLevelMeshUploader 2023-12-26 04:30:58 +01:00
Magnus Norddahl
6a77924207 Group mesh buffers 2023-12-26 04:30:58 +01:00
Magnus Norddahl
86ac07f2f8 Implement drawing HWWall portals using the level mesh and occlusion queries 2023-12-26 04:30:57 +01:00
Magnus Norddahl
47f17b1c03 Move DrawLevelMesh to RenderState 2023-12-26 04:30:57 +01:00
dpjudas
57fe68c8a1 Draw depth pass and portal occlusion test 2023-12-26 04:30:57 +01:00
Magnus Norddahl
04493ade52 Add support for using the correct pipeline for each surface 2023-12-26 04:30:56 +01:00
dpjudas
9ca058ccc9 Create wall surfaces directly from the HWWall output 2023-12-26 04:30:56 +01:00
Magnus Norddahl
d0d964ae42 Hook up HWWall and use the real main.fp shader for the level mesh 2023-12-26 04:30:56 +01:00
Magnus Norddahl
9edfbcd10e Create different buffer for uniform indexes that works for the vertex shader 2023-12-26 04:30:55 +01:00
Magnus Norddahl
ba7dfb8a8f Add uniforms to level mesh and upload them to the GPU 2023-12-26 04:30:54 +01:00
Magnus Norddahl
e713299410 Rename StreamData to SurfaceUniforms 2023-12-26 04:30:54 +01:00
Magnus Norddahl
240d68d7ae Merge SurfaceVertex with FFlatVertex and draw the lightmaps 2023-12-26 04:30:54 +01:00
dpjudas
81cdc402c9 Add code collecting fogballs from the visible scene 2023-12-11 11:34:14 +01:00
Magnus Norddahl
52ec71b05b Remove allowSSBO, useSSBO, glslversion, hwcaps and BuffersArePersistent as none of them apply to Vulkan 2023-10-19 21:31:12 +02: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
Magnus Norddahl
5e3d6e39a0 Merge gl_light_shadowmap and gl_light_raytrace cvars as gl_light_shadows
Rename gl_shadowmap_filter to gl_light_shadow_filter as it applies to raytraced shadows as well
2023-10-15 16:14:00 +02:00
Christoph Oelckers
c94c63110e added a third batch of GetChars call to FStrings. 2023-10-07 23:03:40 +02:00
Christoph Oelckers
89535b803a Backend update from Raze. 2023-10-07 18:42:24 +02:00
Professor Hastig
ab8711b57a removed several bad casts to 'long'.
The 'long' type should generally be avoided because its size differs on Windows and Linux/Mac so it is almost guaranteed to cause undefined behavior
2023-10-04 16:47:43 +02:00
Christoph Oelckers
48ba63c022 added even more explicit GetChars() calls. 2023-10-03 15:55:08 +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
925e0b114d Remove unused MeshUVIndex array 2023-09-30 22:58:37 +02:00
Magnus Norddahl
e2e0a78a2b More code cleanup 2023-09-30 22:24:24 +02:00
Magnus Norddahl
b5095a4790 Group LightList variables 2023-09-30 21:46:27 +02:00
Magnus Norddahl
7bc52386f9 Make doom specific surface fields private to doom 2023-09-30 21:33:07 +02:00
Magnus Norddahl
2d2fb5efaa Fix crash if there are no surfaces in the mesh 2023-09-27 00:29:13 +02:00
Magnus Norddahl
65929d021f Add support for multiple meshes (DoomLevelSubmesh) 2023-09-25 23:28:49 +02:00
Magnus Norddahl
fae22f1bb7 Remove smoothing groups from vk_lightmap and fix some warnings 2023-09-25 20:35:34 +02:00
Magnus Norddahl
1dd2605200 Retrieve the light list on the fly rather than try to sync it 2023-09-22 16:35:50 +02:00
RaveYard
9f5e8b5e4d Minor cleanup and lightmapper fixes 2023-09-22 15:42:05 +02:00
RaveYard
eb134d3fbf Add color blending for lights 2023-09-21 00:15:23 +02:00
RaveYard
08b03f2d73 Add SurfaceVertex to store texture UVs 2023-09-21 00:15:23 +02:00
RaveYard
78e4f67e83 Reimplement ZDRay SectorGroup 2023-09-19 16:23:02 +02:00
Magnus Norddahl
285fbfe299 Only find the tile surfaces once
Only upload the lights once per surface participating in the baking
2023-09-19 01:17:03 +02:00
Magnus Norddahl
e5a4e6c85a Remove LightmapOrigin, LightmapStepX and LightmapStepY as we no longer use them 2023-09-19 00:47:47 +02:00
Magnus Norddahl
2e754c8106 Use the vertex and index buffers from the accelstruct 2023-09-18 17:39:06 +02:00
Magnus Norddahl
8889aecaf6 Fix crash bug where an index buffer was bound as a vertex buffer 2023-09-17 00:08:51 +02:00
RaveYard
c282c47812 Fix sky dome getting randomly influenced by the lightmaps 2023-09-16 15:55:59 +02:00
RaveYard
4e7e1d772b Reintroduce lm_max_updates 2023-09-16 15:13:16 +02:00
Magnus Norddahl
d9b066ad37 Move the visible surface list to HWDrawInfo 2023-09-15 20:45:03 +02:00
Magnus Norddahl
651b2ef9e3 Change lightmapper to only use one image 2023-09-15 18:07:37 +02:00
RaveYard
5a55033ef7 Use UVs from the lightmap 2023-09-15 10:43:56 +02:00
RaveYard
6606860550 Refactor CCMDs in doom_levelmesh.cpp 2023-09-14 19:14:35 +02:00
RaveYard
06d137e4da Skip portal and sky surfaces 2023-09-14 15:14:59 +02:00
RaveYard
7cd33cc060 Optimize which surfaces are passed to lightmapper 2023-09-14 15:14:59 +02:00