Commit graph

678 commits

Author SHA1 Message Date
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
Rachael Alexanderson
54d43b2856
Merge commit '958721e' 2024-08-15 13:11:37 -04:00
Dileep V. Reddy
958721e2b8
Forgot on check. 2024-08-15 02:43:48 -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
Rachael Alexanderson
a4e3aca33c
- add messages for sector light change, thinker creation, and destruction 2024-08-11 15:58:33 -04: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
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
nashmuhandes
a5b08f0fb1 Merge branch 'master' of https://github.com/ZDoom/gzdoom 2024-08-04 07:21:43 +08:00
nashmuhandes
593e1c0225 Add SPF_NOMIPMAP to force actor sprites or particles to have no mipmaps. This makes tiny sprites/particles look more crisp and legible in the distance. Mipmapping causes the sprites/particles to have an inconsistent look where they'd sometimes be clearly visible and sometimes less visible depending on camera distance and movement. 2024-08-03 18:45:48 -03:00
Magnus Norddahl
bde15af593 Merge remote-tracking branch 'gzdoom/master' 2024-07-23 19:23:26 +02:00
dpjudas
3ae77ef6c4 Fix crash when loading maps with sectors with no subsectors 2024-07-20 05:45:28 +02:00
Magnus Norddahl
314ec1030c Fix level mesh crash 2024-07-12 20:04:50 +02:00
dpjudas
7f2c928d14 Prepare wall/flat surface create functions to be able to insert in any location in the mesh buffers 2024-07-05 06:50:00 +02:00
Magnus Norddahl
330ec45d84 Merge tag 'g4.12.2' 2024-06-23 22:27:45 +02:00
Major Cooke
5fc3d44ba5 Added SPF_ROLLCENTER for particles and visual thinkers. 2024-06-23 11:09:29 -04:00
Major Cooke
c56d70f2b1 Added SPF_(NO)FACECAMERA flagst for specifying camera facing on particles and visual thinkers.
- This also adds ensures facing camera is applied to these via the option menu.
2024-06-23 10:07:22 -04:00
RaveYard
57d39048c8 Apply 2D shadowmapping to particles as they do not use levelmesh raytracing 2024-06-20 11:33:06 +08:00
RaveYard
c72092ffed Fix redundant 2D shadowmap test for lightmap lights 2024-06-19 13:23:32 +02:00
nashmuhandes
1a89307ee7 Rename SourceRadius to SoftShadowRadius 2024-06-15 18:08:37 +08:00
Rachael Alexanderson
cf8a04c457
- simplify squishing to square pixels for particles and rollsprites 2024-05-21 03:09:47 -04:00
dpjudas
92230626c1 Add additional null pointer checks for spot lights 2024-05-12 02:55:44 +02:00
Magnus Norddahl
b575ffd36d Add null pointer check for light->target 2024-05-10 18:42:57 +02:00
Rachael Alexanderson
7ef6fa97a7
- make roll and flat sprites square 2024-05-03 14:32:53 -04:00
Rachael Alexanderson
4bf2fb0ef8
- make particles square 2024-05-03 02:04:29 -04:00
Rachael Alexanderson
25f791156f
- fixed: rollsprites now 'unstretch' properly in regular y-billboarding 2024-04-28 01:32:33 -04:00
Christoph Oelckers
98a0b5f8d2
fix lifetime of skyinfo variable in HWWall::SkyPlane. 2024-04-28 01:32:04 -04:00
Rachael Alexanderson
586e89954a
- fixed: rollsprites now 'unstretch' properly in regular y-billboarding 2024-04-23 20:31:05 -04:00
Christoph Oelckers
d45a4f18d4 fix lifetime of skyinfo variable in HWWall::SkyPlane. 2024-04-22 07:14:04 +02:00
Rachael Alexanderson
112c6cbccf
Merge branch 'master' of https://github.com/ZDoom/gzdoom into gzdoom-update-4-12-1 2024-04-21 11:05:59 -04:00
Rachael Alexanderson
111fd48348
- stretch billboarding sprites properly according to the level's aspect ratio 2024-04-20 17:53:08 -04:00
Rachael Alexanderson
73050bc169
- fix executable compile errors 2024-04-16 23:26:43 -04:00
Rachael Alexanderson
b31c62568b
Merge http://github.com/ZDoom/gzdoom into gz2 2024-04-16 23:10:57 -04:00
Professor Hastig
f796e55c0d initialize lightmap pointer in ProcessLowerMiniseg. 2024-04-08 12:54:07 +02:00
Magnus Norddahl
7e2d1da4a6 Add gl_shownormals cvar as enabling ssao and setting a specific debug level was a bit too obscure for this feature 2024-03-18 03:26:29 +01:00
nashmuhandes
a72057945b Merge branch 'master' of https://github.com/ZDoom/gzdoom 2024-03-16 04:37:28 +08:00
Major Cooke
fe0de5053a - Fixed: ROLLCENTER was always being applied even when the flag wasn't present. 2024-03-15 01:17:19 -03:00
nashmuhandes
74a27be3fd Merge branch 'master' of https://github.com/ZDoom/gzdoom 2024-03-10 03:34:37 +08:00
Magnus Norddahl
192cdcd9cb Fix null pointer crash for translucent flats with no texture 2024-03-09 13:28:50 +01:00
dpjudas
c7cee9e527 Fix corona texture mode bug 2024-03-06 04:21:45 +01:00
Magnus Norddahl
ab537a4879 Hook up SourceRadius 2024-03-05 16:37:59 +01:00
Magnus Norddahl
6a7c17dfd6 Fix 3d floor sides not getting lit 2024-03-01 19:30:36 +01:00
Boondorl
b469770ecc Reworked view offsetting
View offsets are now added after the base position and angles (accounting for interpolation) are calculated. Behavior was centralized into a singular tracer that all view offsets now use to prevent clipping out of the map. Cleaned up camera rendering behavior. Angles are now properly normalized after all offsetting is accounted for. The chase cam can now update in real-time instead of forcing interpolation.
2024-03-01 07:10:26 -05:00
Magnus Norddahl
2ba2553c60 Fix sample distance 2024-03-01 11:55:15 +01:00
Magnus Norddahl
68f9fee55b Make the light list part of the level mesh 2024-02-26 15:57:32 +01:00