Commit graph

336 commits

Author SHA1 Message Date
Magnus Norddahl
7bc2ed5436 Remove the submesh class as that caused more problems than it solved 2024-01-29 21:56:42 +01:00
Magnus Norddahl
e9e9081372 Shader backwards compatibility support 2024-01-21 14:40:04 +01:00
Magnus Norddahl
e7e89fce09 Make the vk_rayquery cvar a bit more robust 2024-01-21 14:25:08 +01:00
Kevin Caccamo
d7dcf60c7b Use EXTERN_CVAR instead of extern
Because vk_rayquery is a CVAR and needs this treatment
2024-01-21 14:15:17 +01:00
Kevin Caccamo
fe456eaded Attempt to fix compilation errors on other platforms
The compilation failed because there was more than one vk_rayquery variable (A CVAR and a hard-coded global true value), so I removed the latter.
2024-01-21 14:15:17 +01:00
Magnus Norddahl
d181774e02 Fix shadows not working for non-rt render path 2024-01-17 13:27:30 +01:00
Magnus Norddahl
805bce1166 Merge remote-tracking branch 'gzdoom/master' 2024-01-10 04:03:35 +01:00
Christoph Oelckers
a020b8c2f5 do not compile the first shader in the shader manager's constructor
This was crashing with the move of the V_Init2 call. Instead do it when we first render something so that we can open the window without immediately making the full backend operational.
This was only working on GLES because it performs lazy shader compilation.
2024-01-05 16:55:11 +01:00
Magnus Norddahl
a8cf44bcda Update to latest ZVulkan 2023-12-26 04:44:35 +01:00
Magnus Norddahl
c1f38b18c4 Put all the pipeline barriers in the same function and use a new instance buffer each time the TLAS is updated 2023-12-26 04:31:02 +01:00
Magnus Norddahl
48b6a7ec46 Split level mesh surface from lightmap tiles as we have multiple surfaces per tile 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
4633029a74 Make sure pipeline is rebound after level mesh drawing 2023-12-26 04:30:59 +01:00
Magnus Norddahl
286de841eb Fix validation error caused by rebase 2023-12-26 04:30:59 +01:00
Magnus Norddahl
9dd485be76 Changes needed by rebase 2023-12-26 04:30:59 +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
ed7da1ae25 Moving files 2023-12-26 04:30:58 +01:00
Magnus Norddahl
26b9c52427 Move halffloat to utility 2023-12-26 04:30:58 +01:00
Magnus Norddahl
98c209edbd Rename VkLightmap and VkRaytrace 2023-12-26 04:30:58 +01:00
Magnus Norddahl
6a77924207 Group mesh buffers 2023-12-26 04:30:58 +01:00
Magnus Norddahl
4a95eafc06 Use the stencil and depth buffer settings from RenderState when drawing the level mesh 2023-12-26 04:30:58 +01:00
Magnus Norddahl
6b0e4345a2 Enable face culling 2023-12-26 04:30:57 +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
Magnus Norddahl
4092e7f4e0 Some testing 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
6a971dbaf4 Remove the memory barrier again as such a guarantee is provided by vkSubmitQueue 2023-12-26 04:30:55 +01:00
Magnus Norddahl
418a76ecec Add pipeline barrier for draw indirect calls 2023-12-26 04:30:55 +01:00
Magnus Norddahl
f1b15c5000 Fix the second vertex buffer binding bug 2023-12-26 04:30:55 +01:00
Magnus Norddahl
f550f5b05a Hook up bindless textures for gl_levelmesh 2023-12-26 04:30:55 +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
d06a9e1305 Hook up surface index buffer 2023-12-26 04:30:55 +01:00
Magnus Norddahl
f8fd08a623 Clean up VkDescriptorSetManager a bit and bind the surface uniforms when drawing with gl_levelmesh 2023-12-26 04:30:54 +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
Christoph Oelckers
df3e82d94c cleaned up some redundant file reads and fixed file opening in the movie player.
As a streaming action this cannot borrow the one from the archive.
2023-12-14 17:22:31 +01:00
Magnus Norddahl
e9620e64a4 Enable include directive and use the latest version of glsl, if available 2023-12-14 12:39:24 +01:00
Magnus Norddahl
dfae2a25b0 Add support for using #include in postprocess shaders 2023-12-14 12:28:11 +01:00
Magnus Norddahl
a76dfafbaa Fix misc bugs in the fogball implementation - it works now 2023-12-11 11:37:24 +01:00
dpjudas
c8f6182f36 Some minor adjustments 2023-12-11 11:36:42 +01:00
dpjudas
81cdc402c9 Add code collecting fogballs from the visible scene 2023-12-11 11:34:14 +01:00
Magnus Norddahl
1d0fed0326 Add the shader math needed to draw fogballs 2023-12-11 11:28:55 +01:00
Magnus Norddahl
91ca6c39a3 Add support for loading older custom shaders 2023-12-07 12:19:19 +01:00
Christoph Oelckers
92bbaa7531 fix a few minor issues.
* make Corona a fully scripted class so that AActor can be made final again.
* add global vkversion variable for use by the survey code.
* move progress bar on generic start screen to the bottom and made it longer.
* revert BulletPuff to its GZDoom version because the changes are not compatible with Dehacked.
2023-10-19 22:48:25 +02:00