Commit graph

21,712 commits

Author SHA1 Message Date
Magnus Norddahl
2e6cd8fdda Remove gl_seamless as an user option 2023-12-26 04:31:00 +01:00
Magnus Norddahl
29217df246 Create index list directly from the levelmesh builder 2023-12-26 04:31:00 +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
421b8532ff Split into more files 2023-12-26 04:31:00 +01:00
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