Commit graph

4,361 commits

Author SHA1 Message Date
Magnus Norddahl
f2cfcc4635 Fix tile clipping 2023-10-04 01:24:20 +02:00
Magnus Norddahl
bbf73c2766 Apply surface angle to sun light 2023-10-04 00:46:29 +02:00
Magnus Norddahl
4f86a0ba81 Control ambient occlusion, sunlight and softshadows via cvars 2023-10-04 00:24:32 +02:00
Magnus Norddahl
be81f74954 Turn on backface culling 2023-10-01 13:08:57 +02:00
Magnus Norddahl
4e8e3aa546 Add soft shadows the lightmapper 2023-09-28 22:32:53 +02:00
Magnus Norddahl
4dbe9bacc0 Make shadows slightly softer and fix sampling one time too many 2023-09-27 01:42:20 +02:00
Magnus Norddahl
d132a6842f Use vogel disk sampling for the raytraced soft shadows and reduce the number of samples used for each quality mode 2023-09-27 01:03:05 +02:00
Magnus Norddahl
987421451f Remove global variable return value hacks! 2023-09-26 23:04:12 +02:00
Magnus Norddahl
743ba922b8 Split frag_raytrace.glsl into multiple files as it has become completely unreadable 2023-09-26 22:56:01 +02:00
nashmuhandes
4817ea2d8c Rename "static lights" to "lightmap lights" -- they're technically not limited to being completely static anymore... 2023-09-24 20:34:35 +08:00
Magnus Norddahl
e6f0fec1b8 Finish and enable the indirect draw calls, reducing the direct command buffer draw calls in the lightmapper to 5 2023-09-24 12:40:04 +02:00
RaveYard
f23a18352c Use more accurate light formula for transparency 2023-09-22 15:43:11 +02:00
RaveYard
9f5e8b5e4d Minor cleanup and lightmapper fixes 2023-09-22 15:42:05 +02:00
Magnus Norddahl
30db3feb5a Use a shader to copy the pixels as vkCmdCopyImage is very slow. Also gives us more flexibility in the future for composite lightmaps 2023-09-22 01:41:56 +02:00
RaveYard
8012f3bce3 Temporary measure to avoid crashing in non-rtx mode 2023-09-21 00:15:23 +02:00
RaveYard
eb134d3fbf Add color blending for lights 2023-09-21 00:15:23 +02:00
RaveYard
bf87748380 Fix uninitialized surface.TextureIndex crash and cleanup 2023-09-21 00:15:23 +02:00
RaveYard
19adf71ba9 Add alpha testing for TraceFirstHitTriangle 2023-09-21 00:15:23 +02:00
RaveYard
c525ec1b68 Add access to vertex indices in frag_raytrace.glsl 2023-09-21 00:15:23 +02:00
RaveYard
08b03f2d73 Add SurfaceVertex to store texture UVs 2023-09-21 00:15:23 +02:00
RaveYard
c8146d33b5 Fix lights being slightly shifted 2023-09-20 01:01:18 +02:00
Magnus Norddahl
bb7a33d7b1 Add bindless texture support 2023-09-19 23:58:17 +02:00
Magnus Norddahl
e5a4e6c85a Remove LightmapOrigin, LightmapStepX and LightmapStepY as we no longer use them 2023-09-19 00:47:47 +02:00
Magnus Norddahl
dca58bffa8 Don't change the viewport for every tile we trace 2023-09-19 00:25:32 +02:00
Magnus Norddahl
6e660ef023 Move vertex transform to the GPU 2023-09-18 02:42:12 +02:00
nashmuhandes
aec39ef90b - Add static variants of pulsing and flickering lights
- Clean up and reorganize dynlights.zs
2023-09-16 15:12:34 +02:00
nashmuhandes
ce61cb0ac7 Delete the light probe DoomEdNum 2023-09-16 14:24:08 +08:00
dpjudas
42e7a20cf3 Merge branch 'lightmapper' 2023-09-14 03:35:24 +02:00
nashmuhandes
9f7dd88a4f Mark Corona as abstract as it's not meant to be spawned directly 2023-09-10 23:22:12 +08:00
RaveYard
81497cadec Blur changes to avoid darkening the edges 2023-09-06 20:00:02 +02:00
Magnus Norddahl
10a5e4d466 Add missing file and only include static lights in the lightmaps 2023-09-05 17:47:55 +02:00
RaveYard
651903fe71 WIP VkLightmap integration 2023-08-31 22:57:56 +02:00
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
9e0bf90be6 Merge remote-tracking branch 'remotes/ZDoom/gzdoom/staging' into gzd_staging 2023-08-22 09:09:51 +08:00
nashmuhandes
89b42e3e97 Use a custom naming convention for VKDoom-only stuff 2023-08-21 18:52:05 +02:00
Magnus Norddahl
823a086e3c Use a truetype font for the options menu, although a better one could probably be chosen to match the theme of doom 2023-08-09 22:43:46 +02:00
RaveYard
ea4ffa10e5 A_Chase CHF_DONTLOOKALLAROUND 2023-08-07 11:31:08 -04:00
Ricardo Luís Vaz Silva
bcbb85b1dd Add Weapon::ModifyBobLayer , Weapon::ModifyBobLayer3D and Weapon::ModifyBobPivotLayer3D 2023-08-02 01:05:24 -04:00
Boondorl
5a74e79b92 Added bounce virtual 2023-08-02 00:42:06 -04:00
Boondorl
fe1acc7f40 Localized fix to its own field 2023-08-02 00:41:39 -04:00
Ricardo Luís Vaz Silva
793d6af5d1 add CountSectorTags/CountSectorTags/CountLineIDs/GetLineID 2023-08-02 00:41:10 -04:00
Boondorl
239a288a9a Exported reflection functionality
Localized reflection code to a single function. Fixed an error where NOSHIELDREFLECT was being checked on the wrong Actor. Fixed an oversight where MIRRORREFLECT was checking for valid target despite not needing one.
2023-08-02 00:40:01 -04:00
inkoalawetrust
150e893c67 Added ShadowAimFactor and ShadowPenaltyFactor.
These properties allow to specify how much an actors' aim is degraded when shooting at a shadow actor. And how much the shadow actor itself affects the shooters' aim, respectively.
2023-08-02 00:39:35 -04:00
inkoalawetrust
a7f76fe8b9 Added damage property to earthquakes.
When this property is set to any value above 0. The earthquake does the exact amount of damage specified, instead of a random amount.
2023-08-02 00:38:24 -04:00
inkoalawetrust
a38b151940 Added damage and thrust multipliers to quakes.
These properties allow for scaling the amount of damage an earthquake does and how much it pushes actors around.
2023-08-02 00:38:24 -04:00
inkoalawetrust
8d95138735 Added QF_DAMAGEFALLOFF.
This flag makes it so that the damage and actor thrusting of earthquakes fades with distance like the screen shake effect does.
2023-08-02 00:38:24 -04:00
inkoalawetrust
194f73a94b Added (XF/RADF)_CIRCULAR.
This flag makes explosions use a spherical radius, instead of a cubic one. Only took almost 30 years.
2023-08-02 00:37:58 -04:00
inkoalawetrust
ca1f3ac580 Added (XF/RADF)_NOALLIES.
This flag allows explosions to not harm any actors that are friendly to its' source.
2023-08-02 00:37:58 -04:00
inkoalawetrust
6489b05db9 Added (XF/RADF)_THRUSTLESS.
This flag allows for explosions that do not thrust any of the actors caught in the blast.
2023-08-02 00:37:58 -04:00
makise-homura
357d846b7a Allow custom MessageBox menu selector
GZDoom used to have hardcoded MessageBox menu selector, 0x0d character
of console font, while the other menu is displayed is SmallFont.
It looked too ugly if SmallFont and ConFont heights are different,
and also there was no method of modifying the selector.

Now, the selector is 0x0d from SmallFont, if SmallFont contains this glyph
(its height is greater than zero), otherwise it falls back to previous
behavior (using ConFont as a source of this glyph).

To define custom MessageBox menu selector, just define 0x0d glyph for
SmallFont, and it will be displayed in the menu.

The gap between selector and menu options text is 3 pixels (as before), and
if you wish to enlarge this gap, just add some transparent columns at the
right side of 0x0d glyph.
2023-08-02 00:37:33 -04:00