Commit graph

1,619 commits

Author SHA1 Message Date
Magnus Norddahl
e4aac749dc Nuke st_start.h from orbit 2025-08-08 13:54:59 +02:00
Magnus Norddahl
17dacefc9b Merge remote-tracking branch 'gzdoom/master' into big_beautiful_merge 2025-08-08 12:32:34 +02:00
Ricardo Luís Vaz Silva
773c534896 remove linked lists entirely from lights 2025-08-07 21:04:26 -03:00
Ricardo Luís Vaz Silva
807043b995 dynlight optimize attempt 2025-08-07 21:04:26 -03:00
Magnus Norddahl
e3cde7a9e9 More big beautiful porting 2025-08-08 00:43:45 +02:00
Magnus Norddahl
3fdd22ef91 Merge remote-tracking branch 'gzdoom/master' into big_beautiful_merge 2025-08-06 21:06:53 +02:00
Ricardo Luís Vaz Silva
41baae22c0 minor optimizations to oob/ortho checks 2025-08-06 14:57:34 -03:00
nashmuhandes
cc31619678 Enable filtered sprite edge blending by default. While VKDoom doesn't filter textures initially; should the user choose to enable it, at least make the sprites look better. 2025-08-06 08:27:26 +08:00
Magnus Norddahl
23a344b086 Apply sunlight as a true light source for line horizons 2025-08-05 10:53:26 +02:00
dileepvr
798308a511 fix distant z-fighitng in reflective flats
Z-fighting between flat texture and stencil at long distances was occurring, showing up as a "shimmer" at a long distance from the camera. Just increasing the vertical shift of flat texture.

Addressing this bug: https://github.com/ZDoom/gzdoom/issues/3246
2025-08-04 19:17:04 -03:00
Magnus Norddahl
45c9c281e2 Disable camera frustum clipping for portals 2025-08-04 00:58:48 +02:00
nashmuhandes
346f4c0e87 Add gl_weapon_purelightlevel to make view weapon sprites/models match sector light levels purely 2025-08-02 12:00:50 -04:00
Magnus Norddahl
a66e584be0 Add the camera frustum culling to the normal hwrenderer as well 2025-08-01 09:34:13 +02:00
Magnus Norddahl
378d99fcc4 Don't try draw canvas texture as indexed 2025-07-25 03:19:38 +02:00
Magnus Norddahl
b23617475c Use palette textures for translucent/sprites and apply the translation remap when requesting an indexed texture 2025-07-25 02:50:45 +02:00
Magnus Norddahl
c6a35eb1ef Reduce light bleeding between sector flats of different heights 2025-07-22 22:58:03 +02:00
Boondorl
7d1f2df404
Added scale and alpha interpolation
Similar to angles, needs to be enabled via flags to prevent breaking existing sprites.
2025-07-22 11:35:20 -03:00
Ricardo Luís Vaz Silva
d17a4fd221 fix angled roll if xy billboard is enabled 2025-07-22 10:36:07 -03:00
Dileep V. Reddy
19291c5e5c Sprite lean/angled roll with geometric consistency in multiplayer and mirrors. An ANGLEDROLL flag ties actor's sprite-rolling axis to physical direction instead of viewpoint. Y-Billboarding occurs about a rolled axis (unlike flatsprites which don't billboard). This makes roll consistent when viewed from all angles and in reflections. Useful for sprite-based laser beams and lean mechanics with third-person cameras and/or multiplayer mods. 2025-07-22 10:36:07 -03:00
Magnus Norddahl
5e7b9e35c9 Fix btsx e1 map01 crash 2025-07-22 04:19:16 +02:00
Dileep V. Reddy
20de33b418 Old stencil update created a new portal rendering bug. Found a way to fix all (reverting stencil and reinit state stuff while drawing caps). 2025-07-21 11:54:55 +08:00
Dileep V. Reddy
da13a7e839 Stencil broke stacked sectors. Fixing. 2025-07-20 23:48:47 -03:00
Dileep V. Reddy
f6481b2876 Stacked-sector portal and reflective flat stencils rewrite to address rendering bug with stencil cap. 2025-07-17 23:26:25 -03:00
Magnus Norddahl
a9c1fdf23a Add specular highlights to sunlight 2025-07-17 02:52:28 +02:00
Magnus Norddahl
a42e322aa0 Seems sprites can have no actor 2025-07-10 06:34:00 +02:00
Magnus Norddahl
b285d35d80 Link lightprobe targets on map load 2025-07-10 03:18:44 +02:00
Magnus Norddahl
ed0db43eaa Add PBR lightprobe thing and always bake probes if encountered 2025-07-10 03:10:15 +02:00
Magnus Norddahl
e29e1578bb Use the sector light probe for the sprites 2025-07-10 01:25:12 +02:00
Magnus Norddahl
7f77dc3d70 Bake probes on the GPU without downloading them to system memory
Only apply probes after a full pass has completed
Stop baking after 5 iterations
2025-07-10 01:03:30 +02:00
Magnus Norddahl
50183606d2 Correctly display the light probe locations 2025-07-09 15:44:04 +02:00
Magnus Norddahl
ad1d8fe90a Add r_showlights for visualizing where light sources and probes are 2025-07-09 15:32:21 +02:00
Magnus Norddahl
af6ec929cc Move lightmap atlas textures and light probes to the bindless textures array as its impossible to predict up front how many we need 2025-07-08 02:59:10 +02:00
Dileep V. Reddy
8d1a2c39f4 Squashing a non-visual rendering bug in stacked sector portals and reflective flats. 2025-07-07 22:44:37 +02:00
Magnus Norddahl
d1c6fbe61f Misc lightmapper adjustments 2025-06-24 15:04:16 +02:00
dpjudas
e1ec7b2d85 Add partner subsectors to surface list for each subsector 2025-06-24 04:04:29 +02:00
Magnus Norddahl
10a8c85c1f Polyobjs can't use the sidedef light list 2025-06-23 22:21:47 +02:00
Magnus Norddahl
8220991e10 Fix polyobj using invalid vertices in the level mesh 2025-06-23 22:01:42 +02:00
Magnus Norddahl
c8509d000c Fix some warnings reported by gcc 2025-06-22 08:01:47 +02:00
Boondorl
4e71ec9d46 Fixed camera interpolating when using outdated information
If it's been more than a tick since the last render then disable interpolation as the data for the Actor at this point is likely too outdated. Also fixes quaking while the console and menu are open.
2025-06-14 14:03:40 -03:00
Magnus Norddahl
7f06d3d222 Fix stale pointers when the mesh arrays get resized 2025-06-13 15:21:50 +02:00
nashmuhandes
8def045ab8 Rename this to make more sense 2025-06-13 12:59:32 +08:00
nashmuhandes
a39c84a77a Define the shadow casting style on an Actor using a property. Currently only for lightmaps. 2025-06-13 12:57:02 +08:00
Magnus Norddahl
ad4a923cc9 Remove the mesh limits and resize the GPU buffers as needed 2025-06-11 23:13:07 +02:00
nashmuhandes
c40a36ea7c Allow lm_dynamic to be able to set level-wide in ZDRayInfo 2025-06-12 00:23:36 +08:00
Ricardo Luís Vaz Silva
d55409645f iterate over non-thinking statnums for static models 2025-06-11 22:46:31 +08:00
nashmuhandes
ec9e5db3e3 Enable lightmapped models by default, but keep CVar-gating as a debugging option 2025-06-11 13:18:49 +08:00
Ricardo Luís Vaz Silva
d42ebe9760 limit levelmesh models to StaticMapModel class 2025-06-11 03:55:34 +02:00
Magnus Norddahl
3f1dcce970 Bake models into the level mesh 2025-06-11 03:38:40 +02:00
Magnus Norddahl
cfe282f4bd Model rendering to mesh builder 2025-06-10 20:32:27 +02:00
Ricardo Luís Vaz Silva
daab336784 make lm_dynlights toggling work 2025-06-01 01:10:42 +02:00