Magnus Norddahl
5b2dad99a7
Disable moving lights for now as that's what caused the FPS drop for lm_always_update
2023-09-22 11:32:20 +02:00
RaveYard
3827d51784
WIP wall UVs for levelmesh
2023-09-21 00:15:23 +02:00
RaveYard
fff23e0724
Extract flat rotation from SetPlaneTextureRotation
2023-09-21 00:15:23 +02:00
RaveYard
42e02ec87a
Add WIP mid texture support
2023-09-19 09:34:49 +02:00
RaveYard
dc936ed32b
Use LIGHTMAP lump surface dimensions before packing the lightmap atlas
2023-09-18 16:36:09 +02:00
RaveYard
3dfa79c71f
Fix nullptr crash in HWWall::BuildFFBlock
2023-09-18 13:59:06 +02:00
RaveYard
4e7e1d772b
Reintroduce lm_max_updates
2023-09-16 15:13:16 +02:00
Magnus Norddahl
733624f111
Update the light list (we really need to do this in a less retarded way) when lm_always_update is active
2023-09-16 05:38:30 +02:00
Magnus Norddahl
24bd3d089d
Add cvar for speed testing always updating the lightmap
2023-09-16 05:33:00 +02:00
Magnus Norddahl
2178de0c6c
- Fix VkRaytrace::Raytrace not working properly if called multiple times per frame.
...
- Only call VkRaytrace::Raytrace once per scene
2023-09-16 05:12:31 +02:00
RaveYard
b588d0ef22
Fix missing 'needsUpdate' check before pushing surface to the list
2023-09-16 02:57:23 +02:00
Magnus Norddahl
d9b066ad37
Move the visible surface list to HWDrawInfo
2023-09-15 20:45:03 +02:00
RaveYard
59c93e6e4f
Workaround to make 3d floor side surfaces detectable
2023-09-14 15:15:57 +02:00
RaveYard
06d137e4da
Skip portal and sky surfaces
2023-09-14 15:14:59 +02:00
RaveYard
7cd33cc060
Optimize which surfaces are passed to lightmapper
2023-09-14 15:14:59 +02:00
RaveYard
c6b92e1c1b
Initial implementation for lightmap lump loading
2023-09-13 21:58:11 +02:00
RaveYard
5912a2c30b
Remove awful hardcoded byte offset hack
2023-09-10 23:42:00 +02:00
RaveYard
9ef93da6de
Somehow fix lightmaps being corrupted in debug build
2023-09-10 23:42:00 +02:00
RaveYard
6f44e2b5d4
Change surfaceIndices to surfaces
2023-09-10 23:42:00 +02:00
RaveYard
f19e2e712d
Fix floors not being updated
2023-09-10 23:42:00 +02:00
RaveYard
d96d1aeffc
Visible surfaces are gathered in processing (gathering) render phase and lightmaps drawn before rendering
2023-09-10 23:42:00 +02:00
RaveYard
0f6ea51769
Minor refactor and fix 3d floors not being detected for lightmap updates
2023-09-10 23:42:00 +02:00
RaveYard
6ccb92ef60
Fix surface index passed to glsl
2023-09-10 23:42:00 +02:00
RaveYard
3386b6ad1a
Add walls to the lightmap
2023-09-10 23:42:00 +02:00
RaveYard
b163901862
WIP partial lightmapping
2023-09-10 23:42:00 +02:00
RaveYard
759320b189
CPU tracelight portal fix
2023-09-06 19:04:26 +02:00
Magnus Norddahl
13819967f1
Merge LightmapSurface into DoomLevelMeshSurface
2023-09-02 13:50:28 +02:00
Magnus Norddahl
375e71dc0d
Namespace fixes
2023-09-02 13:09:57 +02:00
Magnus Norddahl
cff50b8087
Initialize lightmap texture in SetLevelMesh
...
Create VkLightmap class on VulkanRenderDevice
2023-09-01 00:03:18 +02:00
RaveYard
23deb11399
Merge Surface into hwrenderer::Surface
2023-08-31 22:57:58 +02:00
nashmuhandes
9e0bf90be6
Merge remote-tracking branch 'remotes/ZDoom/gzdoom/staging' into gzd_staging
2023-08-22 09:09:51 +08: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
Ricardo Luís Vaz Silva
1852f14f30
fix rare crash due to null caller
2023-08-02 01:05:24 -04:00
Ricardo Luís Vaz Silva
bcbb85b1dd
Add Weapon::ModifyBobLayer , Weapon::ModifyBobLayer3D and Weapon::ModifyBobPivotLayer3D
2023-08-02 01:05:24 -04:00
Ricardo Luís Vaz Silva
12752c7a03
fix rare crash due to null caller
2023-08-01 21:44:51 +02:00
RaveYard
e6305c55cd
Fix strange crash when player's weapon is removed.
2023-08-01 17:19:03 +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
Ricardo Luís Vaz Silva
b0d6d82dfd
Add Weapon::ModifyBobLayer , Weapon::ModifyBobLayer3D and Weapon::ModifyBobPivotLayer3D
2023-07-14 16:01:55 +02:00
Magnus Norddahl
362dc63fc1
Add support for gl_multithread while gl_meshcache is active
...
Stop building geometry for lines that have a portal (when gl_meshcache is active)
2023-07-04 02:23:07 +02:00
Magnus Norddahl
3be36b3aa3
Hook up portals to gl_meshcache
2023-07-04 01:16:17 +02:00
Magnus Norddahl
a7f4971d5d
Add HWDrawContext so that multiple threads can maintain their own drawinfo without need for synchronization
2023-06-29 03:33:07 +02:00
Magnus Norddahl
7bdf3f7364
Create a RenderState object for each thread
2023-05-17 22:39:22 +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
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
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
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