Magnus Norddahl
ca5fae50d6
Improve vid_fps stats
2023-05-06 04:52:56 +02:00
Magnus Norddahl
9203784ee0
Use a uniform buffer for the light list
2023-05-06 02:45:17 +02:00
Magnus Norddahl
eba0bee9f6
Change the matrix interface on RenderState so the backend doesn't have to try detect changes on each Apply
...
Include the texture matrix in the mesh builder
2023-05-06 00:34:42 +02:00
Magnus Norddahl
96ac7ba3f0
Don't use VkHardwareDataBuffer for internal backend buffers
2023-05-05 22:04:11 +02:00
Magnus Norddahl
1d8f406162
Let the backend manage the shadowmap buffers
2023-05-01 02:10:43 +02:00
Magnus Norddahl
d7a7953d10
Move bone buffer to backend
2023-04-30 04:49:06 +02:00
Magnus Norddahl
f2585a3b17
Manage the light buffer in the backend
2023-04-30 03:43:38 +02:00
Magnus Norddahl
aadb1c31b6
Manage viewpoint buffer internally in the backend
2023-04-30 02:32:04 +02:00
Magnus Norddahl
ae443c78d4
There is no reason to default to poor stuttery performance
2023-04-27 11:22:11 +02:00
Magnus Norddahl
87c3be94d5
Adjust meshbuilder to vkdoom changes and make sure the drawinfo functions always allocate vertices from the output renderstate object
2023-04-26 04:22:07 +02:00
Magnus Norddahl
71a78f2baf
Merge all sectors into one mesh
2023-04-26 01:09:06 +02:00
Magnus Norddahl
a5a0279fd2
Upload vertices to vertex buffers
2023-04-26 01:09:06 +02:00
Magnus Norddahl
26dcb77f5e
Add support for drawing flats into the mesh cache
2023-04-26 01:09:05 +02:00
Magnus Norddahl
88595c7777
Only create a Mesh if anything was actually drawn
2023-04-26 01:09:05 +02:00
Magnus Norddahl
463315fec0
Fix misc state init issues
2023-04-26 01:09:05 +02:00
Magnus Norddahl
28ef69ca5a
Add the most basic implementation of a Mesh drawer as technically possible :)
2023-04-26 01:09:05 +02:00
Magnus Norddahl
3fe8b6909b
Add a basic renderstate->mesh builder class
2023-04-26 01:09:04 +02:00
Magnus Norddahl
2498b2d3bc
Add hint which of the uniforms are used by SetColor (maybe later move them to a secondary uniform block for independent updating)
2023-04-26 00:38:00 +02:00
Magnus Norddahl
eef9b05f46
Remove mAlphaThreshold
2023-04-24 22:50:04 +02:00
Magnus Norddahl
02be512738
Remove mClipSplit
2023-04-24 22:45:19 +02:00
Magnus Norddahl
ac1a918989
Remove mLightParms
2023-04-24 22:41:07 +02:00
Magnus Norddahl
b7236f3031
Remove unused uniforms and restrict push constants to only control offsets into buffers
2023-04-24 22:10:17 +02:00
Magnus Norddahl
e0c11c1e48
Remove EPassType from VkShaderManager::Get and CompileNextShader() from VkShaderManager constructor
2023-04-24 00:14:04 +02:00
Christoph Oelckers
18daf2c510
- update comment on SSBOs.
2023-04-21 00:41:21 +08:00
Christoph Oelckers
b8f5511ee4
- fixed several warnings emitted by Clang.
2023-04-21 00:41:19 +08:00
Magnus Norddahl
5c9ff283a6
Only add the lightmode actually being used into the shader
2023-04-19 02:28:32 +02:00
Magnus Norddahl
6381280177
Remove virtual inheritance
2023-04-16 21:49:05 +02:00
Magnus Norddahl
6894eb013f
Begin removing binding points from the hwrenderer layer.
...
Well known buffers should be created and managed by the backend, otherwise the backend just becomes an OpenGL emulator.
2023-04-16 19:30:27 +02:00
Magnus Norddahl
1b221db996
Remove dead code
2023-04-16 17:34:52 +02:00
Magnus Norddahl
184e73ab28
Add GetDevice function instead of accessing device member directly
2023-04-16 17:07:55 +02:00
Magnus Norddahl
cd35a0ad76
More folder adjustments
2023-04-16 16:51:52 +02:00
Magnus Norddahl
295eb252ab
Change the folder structure of the vulkan backend to better reflect what is going on
2023-04-16 16:39:15 +02:00
Magnus Norddahl
1f5b7a0256
Add support for gl_light_raytrace for cards that do not support rayquery
2023-04-12 02:09:28 +02:00
Magnus Norddahl
caefc09549
Improve shader performance significantly by only including raytracing or shadowmaps in the shader if enabled
2023-04-07 04:22:43 +02:00
Magnus Norddahl
5ca4c51b7d
Avoid stepping further into VkShaderManager::Get unless the shader has not been compiled
2023-04-06 19:48:28 +02:00
Magnus Norddahl
d5d6c07f53
Fix misc shader related issues
2023-04-06 19:36:58 +02:00
Magnus Norddahl
87ee014b5b
Improve VkShaderProgram to handle more program types
...
Fix memory alignment issues with the shader/pipeline keys
2023-04-06 17:56:44 +02:00
Magnus Norddahl
fd2ae4865c
Merge tracelights
2023-04-05 23:14:25 +02:00
dpjudas
94a06d393f
Add VkShaderKey and start preparing VkShaderManager to be able to handle a lot more shader permutations
2023-04-04 01:00:08 +02:00
Magnus Norddahl
44fed1451d
Fix shader build errors and remove support for old deprecated shader types
2023-03-24 03:34:24 +01:00
Magnus Norddahl
c495c8c094
Add support for using #include in glsl files and improve glsl compile errors
2023-03-22 00:06:13 +01:00
Magnus Norddahl
6878dc5580
Move static layout code back to wadsrc
2023-03-21 20:24:08 +01:00
nashmuhandes
896102c179
Change more default settings
...
- Show item counter on automap
- Enable thicker automap lines and anti-aliased lines for better visibility with high res displays
- Enable textured automap
- HUD border scaling factor to better match default status bar scaling
- Enable subtitles
- Set render quality to "quality" to fix level mesh seams (gl_seamless)
- Enable mouse in menus by default (instead of touchscreen-like)
- Don't show ENDDOOM when quitting the app
- Enable the first crosshair, and set its scale slightly smaller
- Grow crosshair when picking up items
- Set autoaim slider to 0
- Show nametags when switching items and weapons
- Always run enabled
- Disable save/load confirmation dialog
- Enable quicksave rotation
- Enable additively-translucent Doom rocket explosion
- Increase default particles to 10k, and increase the slider to 65k (engine limit)
- Disable night vision effect
- Set sprite clipping to "Always" as this looks better than having sprites sink into the geometry
- Set particle style to round as it matches the pixelated aesthetics better
2023-03-19 04:35:27 +08:00
Magnus Norddahl
b417958f17
Remove old vk_raytrace cvar
2023-03-17 00:06:33 +01:00
Magnus Norddahl
342d495c08
Fix some compile errors caused by cherry-picking an old commit
2023-03-16 23:17:23 +01:00
Magnus Norddahl
7eb9053e30
Update ZVulkan, rename vk_raytrace to gl_light_raytrace and support turning it on and off without a restart
2023-03-16 23:15:02 +01:00
Magnus Norddahl
4bbc88d358
Updates ZVulkan to latest version.
...
Also changes vsync off from mailbox to immediate since otherwise it doesn't work in exclusive full screen mode.
And finally it fixes a scratch buffer alignment bug with the vk raytrace thing
2023-03-16 23:00:56 +01:00
Magnus Norddahl
df7d31968d
Change various defaults
2023-03-16 22:56:21 +01:00
Magnus Norddahl
151b60c436
Remove OpenGL and OpenGL ES backends
2023-03-16 22:09:19 +01:00
Christoph Oelckers
087050c201
- use uniform buffers for dynamic lights everywhere.
...
Branching on SSBO content does not work that well on NVidia so it is better disabled.
So far only implemented for OpenGL - Vulkan needs more work.
2023-02-18 12:22:26 +01:00