Magnus Norddahl
d98df0b498
Finish and enable the indirect draw calls, reducing the direct command buffer draw calls in the lightmapper to 5
2023-09-25 21:21:07 +02:00
RaveYard
5987b537c5
Use more accurate light formula for transparency
2023-09-25 21:21:07 +02:00
RaveYard
99daa8f743
Minor cleanup and lightmapper fixes
2023-09-25 21:21:07 +02:00
Magnus Norddahl
ae4e50a2d4
Use a shader to copy the pixels as vkCmdCopyImage is very slow. Also gives us more flexibility in the future for composite lightmaps
2023-09-25 21:21:06 +02:00
RaveYard
3474dac9d0
Temporary measure to avoid crashing in non-rtx mode
2023-09-25 21:21:06 +02:00
RaveYard
e0b349b331
Add color blending for lights
2023-09-25 21:21:06 +02:00
RaveYard
9d20bdef4f
Fix uninitialized surface.TextureIndex crash and cleanup
2023-09-25 21:21:05 +02:00
RaveYard
f9fb9056f6
Add alpha testing for TraceFirstHitTriangle
2023-09-25 21:21:05 +02:00
RaveYard
29b8fcf6c8
Add access to vertex indices in frag_raytrace.glsl
2023-09-25 21:21:05 +02:00
RaveYard
ef065fb9b9
Add SurfaceVertex to store texture UVs
2023-09-25 21:21:05 +02:00
RaveYard
6e345c6a08
Fix lights being slightly shifted
2023-09-25 21:20:54 +02:00
Magnus Norddahl
ebdef188ee
Add bindless texture support
2023-09-25 21:20:54 +02:00
Magnus Norddahl
6d1f5e02f5
Remove LightmapOrigin, LightmapStepX and LightmapStepY as we no longer use them
2023-09-25 21:20:53 +02:00
Magnus Norddahl
8654c3396f
Don't change the viewport for every tile we trace
2023-09-25 21:20:53 +02:00
Magnus Norddahl
ec94204a28
Move vertex transform to the GPU
2023-09-25 21:20:52 +02:00
RaveYard
dae78e2a2c
Blur changes to avoid darkening the edges
2023-09-25 21:20:06 +02:00
Magnus Norddahl
04941cab43
Add missing file and only include static lights in the lightmaps
2023-09-25 21:20:05 +02:00
RaveYard
52220a5004
WIP VkLightmap integration
2023-09-25 21:19:59 +02:00
Magnus Norddahl
c5b03e016e
Import ZDRay's GPURaytracer class as VkLightmap as the first step in letting the backend update them dynamically
2023-09-25 21:19:58 +02:00
Magnus Norddahl
c43cef96d1
Remove the reserved vbo_shadowdata so only hw_vertexbuffer still needs it
2023-09-25 21:19:05 +02:00
Magnus Norddahl
795c0d90de
Use a uniform buffer for the light list
2023-09-25 21:19:05 +02:00
Magnus Norddahl
f80807d26a
Remove unused uniforms and restrict push constants to only control offsets into buffers
2023-09-25 21:19:02 +02:00
Magnus Norddahl
85f138841c
Only add the lightmode actually being used into the shader
2023-09-25 21:19:01 +02:00
Magnus Norddahl
447932025f
Add support for gl_light_raytrace for cards that do not support rayquery
2023-09-25 21:19:00 +02:00
Magnus Norddahl
d97f9f3055
Fix sunlight not working on models
2023-09-25 21:18:59 +02:00
Magnus Norddahl
c23a109105
Improve shader performance significantly by only including raytracing or shadowmaps in the shader if enabled
2023-09-25 21:18:59 +02:00
Magnus Norddahl
cfa3f8ecc4
Remove the old shaders
2023-09-25 21:18:59 +02:00
Magnus Norddahl
11ca6bb067
Fix the clear screen shader bug
...
Fix texture set layout not matching the c++ code's version (vulkan validation error)
2023-09-25 21:18:58 +02:00
Magnus Norddahl
f11318ff99
Fix misc shader related issues
2023-09-25 21:18:58 +02:00
Magnus Norddahl
e34ee1e462
Fix shader build errors and remove support for old deprecated shader types
2023-09-25 21:18:57 +02:00
Magnus Norddahl
a267cf737e
Add support for using #include in glsl files and improve glsl compile errors
2023-09-25 21:18:57 +02:00
Magnus Norddahl
8682361194
Move static layout code back to wadsrc
2023-09-25 21:18:57 +02:00
dpjudas
15ff88d7a4
Begin refactor the shaders
2023-09-25 21:18:57 +02:00
Magnus Norddahl
35df964d61
Update ZVulkan, rename vk_raytrace to gl_light_raytrace and support turning it on and off without a restart
2023-09-25 21:18:56 +02:00
Christoph Oelckers
5b7826f68b
- set lightblendmode to 0 when setting up a 2D viewpoint.
...
2D never uses dynamic lights so this should always be 0 - and eliminates another place in the backend referencing game data.
2023-01-15 09:21:01 +01:00
Christoph Oelckers
34e2e77f9e
- tab cleanup in shader code.
2023-01-15 08:54:54 +01:00
Ricardo Luís Vaz Silva
8e7897233e
Add Alternate Light Blending Options
2023-01-14 11:29:12 -05:00
Magnus Norddahl
8bcdbc230d
Adds soft shadows to vk_raytrace
2022-12-31 03:51:33 -05:00
Magnus Norddahl
6a005e3a2a
Switch vulkan backend to use the zvulkan library
2022-12-05 07:49:43 +01:00
Shiny Metagross
cd4345373d
Fixed improper casting
...
- Made a mistake on the casting in the shader that only worked for Intel
2022-10-19 22:48:57 +02:00
Shiny Metagross
a8bab6a21d
Intel fix
...
- GZDoom can launch for Intel users - IQMs work for Intel too
2022-10-19 22:48:57 +02:00
Shiny Metagross
08f520f1c6
IQM Support Implemented
...
More info to come
2022-10-19 22:48:57 +02:00
Magnus Norddahl
37039721bd
Fix washed out colors in Vulkan HDR mode
2022-10-11 00:10:02 +02:00
Magnus Norddahl
0f08a0f511
Re-enable ray query in the shader
2022-06-22 07:55:19 +02:00
Magnus Norddahl
5cc21c5a4a
Upgrade glslang to 11.10.0
2022-06-22 07:55:19 +02:00
Magnus Norddahl
821bd3b460
Adjust some init/deinit code and rename some things
2022-06-22 07:55:19 +02:00
Magnus Norddahl
0c1aab074c
Hook up the acceleration structure to the shader and start shooting some rays!
2022-06-22 07:55:19 +02:00
Rachael Alexanderson
7652fd7ee0
Revert "- model normals fix"
...
This worked in some instances but it also broke attenuated lights in other instances, and also caused the shaders to fail to compile on Mac.
This reverts commit 679518f8e5
.
2022-05-08 07:07:54 -04:00
Rachael Alexanderson
679518f8e5
- model normals fix
2022-05-03 23:39:40 -04:00
Rachael Alexanderson
6cc03aba16
- add gl_satformula == 2 - an optional 'more accurate' desaturation
2022-03-16 13:33:29 -04:00