Commit graph

21,708 commits

Author SHA1 Message Date
Magnus Norddahl
1f6356f414 Plane shadow vertices must be created after the level mesh, otherwise they do not receive the lightmap UV coordinates 2023-12-26 04:31:00 +01:00
Magnus Norddahl
4ae767cc5a Fix polyobj planes ending up in the level mesh 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
e491186c80 Don't use the level mesh recursively through portals for now 2023-12-26 04:30:59 +01:00
Magnus Norddahl
b93df82ac7 Generate mesh data flats with a sky 2023-12-26 04:30:59 +01:00
Magnus Norddahl
3c9f56d989 Add support for more portal types 2023-12-26 04:30:59 +01:00
Magnus Norddahl
c59108ece0 Lightmapper fixes 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
bdda16a4f0 Fixes that got lost in the rebase 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
69b48f8123 Fix black flats 2023-12-26 04:30:57 +01:00
Magnus Norddahl
ac212e0147 Use HWFlat for ceilings and floors 2023-12-26 04:30:57 +01:00
Magnus Norddahl
5443ed76ec Draw the sprites 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
2cda07245c Remove old wall surface creation code 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
5f50160108 Prepare surface creation code to use HWWall 2023-12-26 04:30:56 +01:00
Magnus Norddahl
9f963e2c06 Rename lightmap fields to surface as it is being used for more than lightmaps now 2023-12-26 04:30:56 +01:00
Magnus Norddahl
4f4d859fd9 Move some code 2023-12-26 04:30:56 +01:00
dpjudas
f83ae7487f Split into more files 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
5d107ecc49 Apply lightmap 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
d3da7a8443 Fix UV order 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
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
8c56963fdd Fix fogball bindings after rebase 2023-12-11 11:41:12 +01:00