Commit graph

21,347 commits

Author SHA1 Message Date
Magnus Norddahl
d132a6842f Use vogel disk sampling for the raytraced soft shadows and reduce the number of samples used for each quality mode 2023-09-27 01:03:05 +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
987421451f Remove global variable return value hacks! 2023-09-26 23:04:12 +02:00
Magnus Norddahl
743ba922b8 Split frag_raytrace.glsl into multiple files as it has become completely unreadable 2023-09-26 22:56:01 +02:00
Magnus Norddahl
bfdca1a069 Implement dynamic update of the acceleration structure 2023-09-26 18:10:45 +02:00
Magnus Norddahl
2b7394cbb1 Update the dynamic submesh with poly lines 2023-09-26 00:06:10 +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
dpjudas
9677453f6b Prepare VkRaytrace to have a dynamic bottom level acceleration structure 2023-09-25 00:17:53 +02:00
nashmuhandes
4817ea2d8c Rename "static lights" to "lightmap lights" -- they're technically not limited to being completely static anymore... 2023-09-24 20:34:35 +08:00
Magnus Norddahl
6bdc1d44b4 Prevent buffer overrun 2023-09-24 13:15:00 +02:00
Magnus Norddahl
e6f0fec1b8 Finish and enable the indirect draw calls, reducing the direct command buffer draw calls in the lightmapper to 5 2023-09-24 12:40:04 +02:00
dpjudas
8a40cf39d2 Prepare for doing indirect draw calls 2023-09-24 01:37:00 +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
f9b7332aed Fix mid textures not pushed into visible surface list 2023-09-22 15:43:11 +02:00
RaveYard
f23a18352c Use more accurate light formula for transparency 2023-09-22 15:43:11 +02:00
RaveYard
9f5e8b5e4d Minor cleanup and lightmapper fixes 2023-09-22 15:42:05 +02:00
Magnus Norddahl
5b2dad99a7 Disable moving lights for now as that's what caused the FPS drop for lm_always_update 2023-09-22 11:32:20 +02:00
Magnus Norddahl
6f4730d5ae Fix view index binding error 2023-09-22 11:31:50 +02:00
Magnus Norddahl
015aa59992 Update zvulkan 2023-09-22 11:27:20 +02:00
Magnus Norddahl
30db3feb5a Use a shader to copy the pixels as vkCmdCopyImage is very slow. Also gives us more flexibility in the future for composite lightmaps 2023-09-22 01:41:56 +02:00
Magnus Norddahl
9715f28917 Add lightmap stats to stat gpu 2023-09-21 02:07:50 +02:00
Magnus Norddahl
3213175e06 Minor adjustments 2023-09-21 01:45:48 +02:00
RaveYard
8012f3bce3 Temporary measure to avoid crashing in non-rtx mode 2023-09-21 00:15:23 +02:00
RaveYard
eb134d3fbf Add color blending for lights 2023-09-21 00:15:23 +02:00
RaveYard
5cf202f24e Fix surface midtexture yscale 2023-09-21 00:15:23 +02:00
RaveYard
bf87748380 Fix uninitialized surface.TextureIndex crash and cleanup 2023-09-21 00:15:23 +02:00
RaveYard
19adf71ba9 Add alpha testing for TraceFirstHitTriangle 2023-09-21 00:15:23 +02:00
RaveYard
3827d51784 WIP wall UVs for levelmesh 2023-09-21 00:15:23 +02:00
RaveYard
7989b389c7 Fix flat UVs 2023-09-21 00:15:23 +02:00
RaveYard
fff23e0724 Extract flat rotation from SetPlaneTextureRotation 2023-09-21 00:15:23 +02:00
RaveYard
c525ec1b68 Add access to vertex indices in frag_raytrace.glsl 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
c8146d33b5 Fix lights being slightly shifted 2023-09-20 01:01:18 +02:00
Magnus Norddahl
bb7a33d7b1 Add bindless texture support 2023-09-19 23:58:17 +02:00
RaveYard
78e4f67e83 Reimplement ZDRay SectorGroup 2023-09-19 16:23:02 +02:00
RaveYard
42e02ec87a Add WIP mid texture support 2023-09-19 09:34:49 +02:00
Magnus Norddahl
90f046a579 Fix crash when trying to render outside the texture 2023-09-19 01:30:15 +02:00
Magnus Norddahl
110819ea05 Fix not setting the reset counter 2023-09-19 01:19:31 +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
9e136a7e79 Fix maploader warning 2023-09-19 00:46:20 +02:00
Magnus Norddahl
dca58bffa8 Don't change the viewport for every tile we trace 2023-09-19 00:25:32 +02:00
Magnus Norddahl
44f1090b45 Replace macros with functions 2023-09-18 23:12:56 +02:00
Magnus Norddahl
2e754c8106 Use the vertex and index buffers from the accelstruct 2023-09-18 17:39:06 +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
RaveYard
3dfa79c71f Fix nullptr crash in HWWall::BuildFFBlock 2023-09-18 13:59:06 +02:00
Magnus Norddahl
6e660ef023 Move vertex transform to the GPU 2023-09-18 02:42:12 +02:00
Magnus Norddahl
3c1b12862c Remember vid_fps cvar (whyyy wasn't this always the case?) 2023-09-17 00:26:52 +02:00