Commit graph

1,953 commits

Author SHA1 Message Date
Magnus Norddahl
521e2ed39c Run the light tiles compute shader 2024-09-14 04:59:39 +02:00
Magnus Norddahl
2ba2c24f6b Add shaders for light tiles 2024-09-13 20:45:36 +02:00
dpjudas
98e58bf340 Create images and buffers needed for finding dynamic light visibility on the GPU 2024-09-13 02:21:03 +02:00
Magnus Norddahl
f0c018fdc6 Update light level in level mesh 2024-09-11 01:39:47 +02:00
nashmuhandes
58fecd4b92 Move depth fade definition to GLDEFS 2024-09-09 18:57:07 +08:00
nashmuhandes
27058efe85 Rename "depth fade falloff" to "depth fade threshold" as it makes more sense 2024-09-09 17:06:04 +08:00
Magnus Norddahl
f41e7f044a Fix SceneLinearDepth texture using wrong size 2024-09-08 23:15:48 +02:00
Magnus Norddahl
f8f4ef5cbb And the AMD image transition fun (Thanks AMD!) 2024-09-08 22:29:41 +02:00
Magnus Norddahl
b2040a0892 Add support for the poor souls on a 386 that can't afford to use full screen 2024-09-08 22:25:24 +02:00
Magnus Norddahl
cc06294932 Remove linear depth from texture manager again (this wasn't a good idea)
Add linear depth texture to the fixed descriptor set
2024-09-08 21:18:22 +02:00
Magnus Norddahl
c62bb7a0f0 Add RenderState.SetDepthFadeFalloff 2024-09-08 20:32:30 +02:00
Magnus Norddahl
1b8effe1ea Make linearized depth data available to translucent material shaders via the texture name SceneLinearDepth. Does it work? Who knows! 2024-09-08 02:32:01 +02:00
Magnus Norddahl
d2958d8366 Change how visible surfaces for a tile are collected by the light mapper 2024-09-07 03:11:36 +02:00
Magnus Norddahl
5a1c8131c5 Move inlined functions out of the class definition for better readability 2024-09-07 00:42:49 +02:00
dpjudas
6b3803cb3b Fix descriptor pool size 2024-09-05 10:14:23 +02:00
Magnus Norddahl
4655b02f06 Fix using wrong surface for the extra BLAS structures for trace hits
Add gl_raytrace for ray tracing the level mesh
2024-09-05 00:15:59 +02:00
Magnus Norddahl
db5f47d14f Fix SSAO not working in gl_levelmesh 2024-09-04 02:27:10 +02:00
Magnus Norddahl
4b0d4a210a Remove unused class 2024-09-01 23:47:16 +02:00
Magnus Norddahl
4ba0b47665 Dont draw sectorstack atm 2024-09-01 23:01:39 +02:00
dpjudas
4666fa6241 Split masked from opaque in the level mesh draw lists 2024-09-01 22:44:25 +02:00
dpjudas
66288b539c Fix crash on GPUs that doesn't support ray query 2024-08-31 03:42:03 +02:00
Magnus Norddahl
3cb2b31d95 Create up to 32 bottom level acceleration structures to avoid rebuilding the entire map on geometry changes 2024-08-30 03:12:24 +02:00
Magnus Norddahl
d12cd4d74d Sort initial draw lists by pipeline
Fix applying pipeline state too often for scattered draw ranges
Delay updating sides and sectors until frame start to allow the playsim to mark surfaces dirty multiple times
2024-08-28 19:53:12 +02:00
dpjudas
ddc3b530c7 Fix compile error due to missing include statement 2024-08-26 12:51:16 +02:00
Magnus Norddahl
61375fae12 Fix uniforms upload bug 2024-08-25 14:19:11 +02:00
Magnus Norddahl
18db0b49a7 Update level mesh on sector changes 2024-08-25 01:06:44 +02:00
Magnus Norddahl
d28a3571b5 More level mesh buffer fun 2024-08-23 00:01:08 +02:00
Magnus Norddahl
356ad2fe9f Split doom specific surface data from common/gpu surface data 2024-08-20 02:06:05 +02:00
Magnus Norddahl
87eb89ad33 Remove some indirection 2024-08-19 07:53:30 +02:00
Magnus Norddahl
a8acdb9d37 Stop grabbing mouse when game window doesn't have the focus 2024-08-18 14:56:58 +02:00
Rachael Alexanderson
54d43b2856
Merge commit '958721e' 2024-08-15 13:11:37 -04:00
Rachael Alexanderson
9bbad31278
Merge commit 'b044baf' 2024-08-15 13:06:43 -04:00
Ritchie Swann
120c0fb5ca
Use TCHAR on Windows 2024-08-15 02:43:47 -04:00
Ritchie Swann
801dc4aaac
sys/stat.h is required on all platforms 2024-08-15 02:43:47 -04:00
Ritchie Swann
e1e5ae16e2
Fix namespace issue
windows.h must be included in the main namespace on mingw64, otherwise there are loads of compile errors
2024-08-15 02:43:47 -04:00
Magnus Norddahl
e9946bead2 Fix not lights in the internal lightmapper 2024-08-13 23:35:32 +02:00
dpjudas
b6cbaaedbc Update the bottom level accel structure if vertices or indexes change 2024-08-11 23:03:32 +02:00
Magnus Norddahl
766b558119 Ranges in buffers are so fun! 2024-08-11 20:39:45 +02:00
Magnus Norddahl
e0cba77646 Move levelmeshhelper completely out of the Common folder
Connect the level updates to the level mesh
2024-08-11 18:34:03 +02:00
Magnus Norddahl
e80615e167 Move the level mesh dirty ranges to levelmesh so that it can be updated 2024-08-11 17:51:45 +02:00
Ricardo Luís Vaz Silva
8f79753dc0 make sure all texZ functions update the levelmesh 2024-08-11 17:50:36 +02:00
Ricardo Luís Vaz Silva
7456c7685b make hooks more specific 2024-08-11 17:50:36 +02:00
Ricardo Luís Vaz Silva
467cf2800b Fix compilation 2024-08-11 17:50:36 +02:00
dileepvr
95b264bdb6
Isometric Mode and Robin (#2618)
* Feature-complete isometric mode fork.

* Dithered transparency condition tweaks.

* Dithered transparency for non-corpse monsters only (and missiles).

* SpectatorCamera vertical shift.

* Including math.h in hw_sprites.cpp to keep visual studio happy (it couldn't find M_SQRT2 definition).

* Defining MY_SQRT2 in hw_sprites.cpp to keep visual studio happy (it couldn't find M_SQRT2 definition).

* Defining MY_SQRT2 in r_utility.cpp also to keep visual studio happy.

* retrigger checks

* Have correct sprite angle-frame face the camera with orthographic projection enabled.

* Dithered Transparency now works properly on 3D floors. Moved that dither-trans flag setting code within hw_bsp.cpp to handle double-processing of linedefs. Added helper functions to FRenderViewpoint class 'bool IsOrtho()' and 'bool IsAllowedOoB()' to clean up checks everywhere in the code.

* Fixed indents. Added bbox property to subsector struct and use it instead of BSP nodes and Clippers (creating a bbox around viewpoint and checking for overlap) in orthographic mode when no fog of war is active. Turns out to be much faster. Though you need really big maps (Winter's Fury MAP01) to see a difference in fps.

* Non-linux checks don't like uint. Changed to unsigned int.

* Small change of a float to camera.zs. Ignore for testing. Should make no difference.

* Update actor.h to remain mergeable

RF2_NOMIPMAP was introduced, so I had to displace RF_ISOMETRICSPRITES to next bit.
2024-08-11 10:04:40 -04:00
Dileep V. Reddy
8a5e7449c1 Consolidated isometric mode commits. 2024-08-11 15:55:21 +02:00
Magnus Norddahl
f1b9e68305 Add more dynamic update code to level mesh 2024-08-11 01:15:44 +02:00
Ricardo Luís Vaz Silva
b044baf850 don't change priority to idle if i_pauseinbackground is false 2024-08-09 18:04:51 -03:00
Ricardo Luís Vaz Silva
1655f7e3b7 Allow XInput joysticks to work while the game is unfocused 2024-08-09 18:04:51 -03:00
nashmuhandes
a6fc168f0b Merge branch 'master' of https://github.com/ZDoom/gzdoom 2024-07-31 00:45:38 +08:00
Boondorl
d697eafbe1 Fixed subnormal float viewpos values breaking rendering 2024-07-29 03:10:50 -04:00