Commit graph

239 commits

Author SHA1 Message Date
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
Magnus Norddahl
bb7a33d7b1 Add bindless texture support 2023-09-19 23:58:17 +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
dca58bffa8 Don't change the viewport for every tile we trace 2023-09-19 00:25:32 +02:00
Magnus Norddahl
2e754c8106 Use the vertex and index buffers from the accelstruct 2023-09-18 17:39:06 +02:00
Magnus Norddahl
6e660ef023 Move vertex transform to the GPU 2023-09-18 02:42:12 +02:00
Rachael Alexanderson
861450ee3f - compile fixes for mac os 2023-09-16 23:38:36 +02:00
RaveYard
4e7e1d772b Reintroduce lm_max_updates 2023-09-16 15:13:16 +02:00
Magnus Norddahl
2178de0c6c - Fix VkRaytrace::Raytrace not working properly if called multiple times per frame.
- Only call VkRaytrace::Raytrace once per scene
2023-09-16 05:12:31 +02:00
RaveYard
e3e08c29b0 Fix lastSurfaceCount growing forever 2023-09-16 02:57:23 +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
6606860550 Refactor CCMDs in doom_levelmesh.cpp 2023-09-14 19:14:35 +02:00
RaveYard
bbcc0c1e88 Add stat lightmap and surfaceinfo ccmd 2023-09-14 19:14:35 +02:00
RaveYard
7cd33cc060 Optimize which surfaces are passed to lightmapper 2023-09-14 15:14:59 +02:00
Rachael Alexanderson
1d2427c146 - fixes for GCC on Linux 2023-09-14 11:36:10 +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
a340b69c79 Fix lightmapper still using hacks to detect levelmesh changes 2023-09-11 19:51:23 +02:00
Magnus Norddahl
542dfd3666 Delay creating the accel struct until frame start 2023-09-11 14:55:31 +02:00
RaveYard
adfc7082f5 Remove hacks associated with SetLevelMesh 2023-09-11 14:44:17 +02:00
Magnus Norddahl
b0d182c099 Fix some validation errors 2023-09-11 13:49:39 +02:00
RaveYard
abae945fc8 Remove unused code from vk_lightmap.cpp 2023-09-10 23:42:00 +02:00
RaveYard
5912a2c30b Remove awful hardcoded byte offset hack 2023-09-10 23:42:00 +02:00
RaveYard
c9fccc53ec Fix lightmapper running background tasks forever 2023-09-10 23:42:00 +02:00
RaveYard
9ef93da6de Somehow fix lightmaps being corrupted in debug build 2023-09-10 23:42:00 +02:00
RaveYard
6f44e2b5d4 Change surfaceIndices to surfaces 2023-09-10 23:42:00 +02:00
RaveYard
19e9ac1db3 Add cvar lm_scale for multiplying resolution of the lightmap 2023-09-10 23:42:00 +02:00
RaveYard
fd4b3a8e73 Update lightmapper and add limiter to updates 2023-09-10 23:42:00 +02:00
RaveYard
6ccb92ef60 Fix surface index passed to glsl 2023-09-10 23:42:00 +02:00
RaveYard
2101f37ddd Extend lightmapping stat 2023-09-10 23:42:00 +02:00
RaveYard
b163901862 WIP partial lightmapping 2023-09-10 23:42:00 +02:00
RaveYard
f95ffbe299 WIP surface list for raytracing 2023-09-10 23:42:00 +02:00
RaveYard
c05ef67679 Add ZDRay light intensity support 2023-09-06 19:04:26 +02:00
Magnus Norddahl
38f15881bf Fix clearing frame buffer when flushing 2023-09-05 23:00:30 +02:00
Magnus Norddahl
8885301049 Clear raytrace framebuffer when drawing into it 2023-09-05 18:31:28 +02:00
RaveYard
036debfac6 Sector portals sunlight only 2023-09-05 17:43:38 +02:00
Magnus Norddahl
963161cce1 Add the 3x3 blur 2023-09-05 17:41:39 +02:00
Magnus Norddahl
bbdd886f23 Only recreate lightmap texture if its size changes 2023-09-04 14:47:55 +02:00
Magnus Norddahl
73d18877b6 Reuse lightmap baking textures between calls to Raytrace 2023-09-04 14:39:11 +02:00
RaveYard
c5da1ecaec Fix use of uninitialized variables boundsMin and boundsMax 2023-09-04 10:08:43 +02:00
Magnus Norddahl
ea02067b0a Delay finding the light lists until after map has loaded 2023-09-03 06:28:41 +02:00
Magnus Norddahl
44d830df31 Release the resources so the lightmapper can run again 2023-09-03 05:22:25 +02:00
Magnus Norddahl
c0c0271c7b Perform the copy from the atlas resolve image to the lightmap texture on the GPU 2023-09-03 05:03:57 +02:00
Magnus Norddahl
0835ae415b Use the command buffers from VkCommandBufferManager 2023-09-02 15:14:01 +02:00
Magnus Norddahl
7c862dd861 Finish upload before using buffers 2023-09-02 14:50:57 +02:00