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
Magnus Norddahl
71a78f2baf
Merge all sectors into one mesh
2023-04-26 01:09:06 +02:00
Magnus Norddahl
2d335d0f97
Add gl_meshcache cvar for toggling it on and off
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
b189a63e6b
Test drawing all cached sectors every frame
2023-04-26 01:09:05 +02:00
Magnus Norddahl
640c86d0c7
Build a mesh cache for all sectors
2023-04-26 01:09:05 +02:00
Magnus Norddahl
ed1e8d5986
Adjust HWWall to allocate vertices from renderstate
2023-04-26 01:09:05 +02:00
Magnus Norddahl
5c9ff283a6
Only add the lightmode actually being used into the shader
2023-04-19 02:28:32 +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
4638cc44d2
Fix null pointer crash when drawing sprites with a null actor
2023-04-16 14:35:01 +02:00
nashmuhandes
3a2b451955
Add hitbox debug rendering (r_showhitbox)
2023-04-08 05:19:23 +08:00
Magnus Norddahl
4c3848cfb2
Cache the result of traces so that it only needs to be done for visible moving actors
2023-04-07 18:44:59 +02:00
Magnus Norddahl
ba0243e378
Fix sunlight not working on models
2023-04-07 18:00:48 +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