Magnus Norddahl
3750173eae
Import ZDRay's GPURaytracer class as VkLightmap as the first step in letting the backend update them dynamically
2023-08-31 02:47:11 +02:00
nashmuhandes
4aa6ac5585
Merge remote-tracking branch 'remotes/origin/gzd_staging'
2023-08-31 08:37:25 +08:00
Magnus Norddahl
370bf24d2c
Fix crash when frame buffers are resized
2023-08-30 18:53:45 +02:00
RaveYard
97eaa46b69
Configurable sampling per custom texture in material shaders
2023-08-25 18:18:03 +02:00
nashmuhandes
9e0bf90be6
Merge remote-tracking branch 'remotes/ZDoom/gzdoom/staging' into gzd_staging
2023-08-22 09:09:51 +08:00
Cacodemon345
14a3cf8fc2
CMakeLists upgrade to 3.16 and cleanup
...
* Remove precompiled header hack
* Fixes for compilation on VS2022 Debug configurations
2023-08-14 19:30:50 +02:00
Cacodemon345
fe7beaaf17
Add support for HDR canvas textures
...
Vulkan only.
2023-08-12 06:46:05 -04:00
Christoph Oelckers
16cefb7528
- some angle cleanup
...
* clean out the angle conversion helpers from basics.h.
* use degrees instead of radians in TMatrix3x3.
2023-08-12 10:10:27 +02:00
Professor Hastig
666a99f204
lightmode refactor
...
* make all legacy light modes except 'Doom' MAPINFO only. A CVAR still exists for testing but its value won't be saved to the config.
* user can only select between "performance', 'software' and 'vanilla'. 'performance' is the old 'Doom' mode which is still needed to speed things up on low end hardware.
* MAPINFO can not enforce any of the two software light modes, as low end users require the option to change this to the 'performance' setting. Selecting one will always revert to the user's light mode selection.
2023-07-17 22:50:05 +02:00
nashmuhandes
07f722b6f3
Merge branch 'master' of https://github.com/ZDoom/gzdoom into GZDoomUpdate-12-07-2023
2023-07-12 20:51:41 +08:00
Christoph Oelckers
62b9243142
- made some changes to vectors.h so that it can be used without the floating point function replacements.
...
Using __has_include and providing fallback implementations.
2023-06-16 20:51:25 +02:00
l2ksolkov
245dac814e
Add missing include guards
2023-05-29 07:35:26 +02:00
Christoph Oelckers
acfe82b9a8
- Backend update from Raze.
2023-05-27 09:31:17 +02:00
Magnus Norddahl
7bdf3f7364
Create a RenderState object for each thread
2023-05-17 22:39:22 +02:00
Magnus Norddahl
83254204ff
Add support for submitting command buffers from worker threads
2023-05-17 22:02:27 +02:00
Magnus Norddahl
9067d7529d
Make VkMaterial::GetDescriptorSet thread safe
2023-05-17 19:08:57 +02:00
Magnus Norddahl
79d958f665
Add thread safe render pass and pipeline creation and fetching
2023-05-17 00:46:43 +02:00
Magnus Norddahl
4a0a4d2fb3
Move VkRSBuffers to new file
2023-05-16 23:51:00 +02:00
Magnus Norddahl
753c5b1997
Split postprocess pipeline creation to its own files
2023-05-16 23:14:14 +02:00
Magnus Norddahl
d74ee4088e
Create RenderState buffers for each thread
2023-05-12 03:30:40 +02:00
Magnus Norddahl
1fd14f1140
Remove FFlatVertexBuffer
2023-05-08 23:12:14 +02:00
Magnus Norddahl
154cb2e967
Prepare FFlatVertexBuffer for removal
2023-05-07 03:19:43 +02:00
Magnus Norddahl
1fe5b8e26f
Remove IRenderQueue
2023-05-07 01:02:54 +02:00
Magnus Norddahl
84c2980398
Remove the reserved vbo_shadowdata so only hw_vertexbuffer still needs it
2023-05-07 00:49:54 +02:00
Magnus Norddahl
f05fccb110
Fix offset bug when using more than 1024 lights in a scene
2023-05-06 06:14:15 +02:00
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