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