Commit graph

165 commits

Author SHA1 Message Date
Magnus Norddahl
79302a7a58 Fix warnings 2023-09-11 01:31:51 +02:00
RaveYard
5912a2c30b Remove awful hardcoded byte offset hack 2023-09-10 23:42:00 +02:00
RaveYard
6f44e2b5d4 Change surfaceIndices to surfaces 2023-09-10 23:42:00 +02:00
RaveYard
139ce34535 WIP refactoring of surface gathering 2023-09-10 23:42:00 +02:00
RaveYard
0f6ea51769 Minor refactor and fix 3d floors not being detected for lightmap updates 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
b163901862 WIP partial lightmapping 2023-09-10 23:42:00 +02:00
RaveYard
759320b189 CPU tracelight portal fix 2023-09-06 19:04:26 +02:00
RaveYard
c05ef67679 Add ZDRay light intensity support 2023-09-06 19:04:26 +02:00
RaveYard
036debfac6 Sector portals sunlight only 2023-09-05 17:43:38 +02:00
RaveYard
137b144fe1 Round sampledist to power of 2 2023-09-04 12:59:44 +02:00
RaveYard
6a579396b5 Read ZDRay info thing 2023-09-04 12:59:44 +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
cdb9f3798c Add lights to surfaces 2023-09-03 06:09:54 +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
RaveYard
c2ded2796f Port BuildSmoothingGroups from ZDray 2023-09-02 21:23:06 +02:00
Magnus Norddahl
13819967f1 Merge LightmapSurface into DoomLevelMeshSurface 2023-09-02 13:50:28 +02:00
Magnus Norddahl
e297b78a25 Create DoomLevelMeshSurface 2023-09-02 13:24:04 +02:00
Magnus Norddahl
375e71dc0d Namespace fixes 2023-09-02 13:09:57 +02:00
Magnus Norddahl
52a1c62b2c Move SurfaceInfo and PortalInfo to vk_raytrace
Add VSMatrix * FVector4 operator
2023-09-02 12:54:07 +02:00
Magnus Norddahl
1e47db3cf3 Rename MeshSurfaces to MeshSurfaceIndexes for clarity 2023-09-02 12:34:00 +02:00
RaveYard
2b74f408aa Use lightmapper output 2023-09-02 11:07:14 +02:00
Magnus Norddahl
cff50b8087 Initialize lightmap texture in SetLevelMesh
Create VkLightmap class on VulkanRenderDevice
2023-09-01 00:03:18 +02:00
RaveYard
23deb11399 Merge Surface into hwrenderer::Surface 2023-08-31 22:57:58 +02:00
RaveYard
6fc7eaf2fa First step towards refactoring 2023-08-31 22:57:57 +02:00
RaveYard
4e57deaf33 Buffer data now in Levelmesh 2023-08-31 22:57:57 +02:00
RaveYard
651903fe71 WIP VkLightmap integration 2023-08-31 22:57:56 +02:00
Magnus Norddahl
3750173eae Import ZDRay's GPURaytracer class as VkLightmap as the first step in letting the backend update them dynamically 2023-08-31 02:47:11 +02:00
nashmuhandes
9e0bf90be6 Merge remote-tracking branch 'remotes/ZDoom/gzdoom/staging' into gzd_staging 2023-08-22 09:09:51 +08:00
Christoph Oelckers
16cefb7528 - some angle cleanup
* clean out the angle conversion helpers from basics.h.
* use degrees instead of radians in TMatrix3x3.
2023-08-12 10:10:27 +02:00
Professor Hastig
666a99f204 lightmode refactor
* make all legacy light modes except 'Doom' MAPINFO only. A CVAR still exists for testing but its value won't be saved to the config.
* user can only select between "performance', 'software' and 'vanilla'. 'performance' is the old 'Doom' mode which is still needed to speed things up on low end hardware.
* MAPINFO can not enforce any of the two software light modes, as low end users require the option to change this to the 'performance' setting. Selecting one will always revert to the user's light mode selection.
2023-07-17 22:50:05 +02:00
nashmuhandes
07f722b6f3 Merge branch 'master' of https://github.com/ZDoom/gzdoom into GZDoomUpdate-12-07-2023 2023-07-12 20:51:41 +08:00
l2ksolkov
245dac814e Add missing include guards 2023-05-29 07:35:26 +02:00
Magnus Norddahl
83254204ff Add support for submitting command buffers from worker threads 2023-05-17 22:02:27 +02:00
Magnus Norddahl
1fd14f1140 Remove FFlatVertexBuffer 2023-05-08 23:12:14 +02:00
Magnus Norddahl
154cb2e967 Prepare FFlatVertexBuffer for removal 2023-05-07 03:19:43 +02:00
Magnus Norddahl
1fe5b8e26f Remove IRenderQueue 2023-05-07 01:02:54 +02:00
Magnus Norddahl
84c2980398 Remove the reserved vbo_shadowdata so only hw_vertexbuffer still needs it 2023-05-07 00:49:54 +02:00
Magnus Norddahl
9203784ee0 Use a uniform buffer for the light list 2023-05-06 02:45:17 +02:00
Magnus Norddahl
eba0bee9f6 Change the matrix interface on RenderState so the backend doesn't have to try detect changes on each Apply
Include the texture matrix in the mesh builder
2023-05-06 00:34:42 +02:00
Magnus Norddahl
1d8f406162 Let the backend manage the shadowmap buffers 2023-05-01 02:10:43 +02:00
Magnus Norddahl
d7a7953d10 Move bone buffer to backend 2023-04-30 04:49:06 +02:00
Magnus Norddahl
f2585a3b17 Manage the light buffer in the backend 2023-04-30 03:43:38 +02:00
Magnus Norddahl
aadb1c31b6 Manage viewpoint buffer internally in the backend 2023-04-30 02:32:04 +02:00
Magnus Norddahl
ae443c78d4 There is no reason to default to poor stuttery performance 2023-04-27 11:22:11 +02:00
Magnus Norddahl
87c3be94d5 Adjust meshbuilder to vkdoom changes and make sure the drawinfo functions always allocate vertices from the output renderstate object 2023-04-26 04:22:07 +02:00
Magnus Norddahl
71a78f2baf Merge all sectors into one mesh 2023-04-26 01:09:06 +02:00
Magnus Norddahl
a5a0279fd2 Upload vertices to vertex buffers 2023-04-26 01:09:06 +02:00