Commit graph

298 commits

Author SHA1 Message Date
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
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
Magnus Norddahl
44c75fb9a7 Fix unmap asserts 2023-09-02 12:27:12 +02:00
Magnus Norddahl
706256b969 Fix misc typos 2023-09-02 12:03:32 +02:00
RaveYard
2b74f408aa Use lightmapper output 2023-09-02 11:07:14 +02:00
RaveYard
689e764830 Fix copying of pixels from surface.texPixels to LMTextureData 2023-09-02 11:07:14 +02:00
RaveYard
6f00cacdcc WIP Attempt to fix the temporary ZDRay tracecoder lightmap write 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
18842eb30c GenerateLightmap in DFrameBuffer 2023-08-31 22:57:57 +02:00
RaveYard
6fc7eaf2fa First step towards refactoring 2023-08-31 22:57:57 +02:00
RaveYard
ef031c2073 WIP fake raytracer output 2023-08-31 22:57:57 +02:00
RaveYard
651903fe71 WIP VkLightmap integration 2023-08-31 22:57:56 +02:00
Magnus Norddahl
1162a5017a Adjust names of variables for better readability 2023-08-31 03:11:24 +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
4aa6ac5585 Merge remote-tracking branch 'remotes/origin/gzd_staging' 2023-08-31 08:37:25 +08:00
Magnus Norddahl
370bf24d2c Fix crash when frame buffers are resized 2023-08-30 18:53:45 +02:00
RaveYard
97eaa46b69 Configurable sampling per custom texture in material shaders 2023-08-25 18:18:03 +02:00
Christoph Oelckers
ebb71cebf1 - put the entire filesystem code into a namespace and created some subdirectories. 2023-08-22 22:54:54 +02:00
Christoph Oelckers
2c2bf0265f - refactored all places which treated FileData as zero terminated. 2023-08-22 22:54:53 +02:00
Christoph Oelckers
4906d287cb - use std::vector<std::string> to pass the file list to InitMultipleFiles 2023-08-22 22:54:52 +02:00
Christoph Oelckers
eccbafc1bc - let FileData.GetString only return a const char pointer.
Not exposing the implementation will allow a lot more optimization in the backend and we also want to get rid of FString here.
2023-08-22 22:18:53 +02:00
nashmuhandes
9e0bf90be6 Merge remote-tracking branch 'remotes/ZDoom/gzdoom/staging' into gzd_staging 2023-08-22 09:09:51 +08:00
Cacodemon345
fe7beaaf17 Add support for HDR canvas textures
Vulkan only.
2023-08-12 06:46:05 -04: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
Christoph Oelckers
62b9243142 - made some changes to vectors.h so that it can be used without the floating point function replacements.
Using __has_include and providing fallback implementations.
2023-06-16 20:51:25 +02:00
Christoph Oelckers
acfe82b9a8 - Backend update from Raze. 2023-05-27 09:31:17 +02:00
Magnus Norddahl
7bdf3f7364 Create a RenderState object for each thread 2023-05-17 22:39:22 +02:00
Magnus Norddahl
83254204ff Add support for submitting command buffers from worker threads 2023-05-17 22:02:27 +02:00
Magnus Norddahl
9067d7529d Make VkMaterial::GetDescriptorSet thread safe 2023-05-17 19:08:57 +02:00
Magnus Norddahl
79d958f665 Add thread safe render pass and pipeline creation and fetching 2023-05-17 00:46:43 +02:00
Magnus Norddahl
4a0a4d2fb3 Move VkRSBuffers to new file 2023-05-16 23:51:00 +02:00
Magnus Norddahl
753c5b1997 Split postprocess pipeline creation to its own files 2023-05-16 23:14:14 +02:00
Magnus Norddahl
d74ee4088e Create RenderState buffers for each thread 2023-05-12 03:30:40 +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
84c2980398 Remove the reserved vbo_shadowdata so only hw_vertexbuffer still needs it 2023-05-07 00:49:54 +02:00
Magnus Norddahl
f05fccb110 Fix offset bug when using more than 1024 lights in a scene 2023-05-06 06:14:15 +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
96ac7ba3f0 Don't use VkHardwareDataBuffer for internal backend buffers 2023-05-05 22:04:11 +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