Commit graph

1,302 commits

Author SHA1 Message Date
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
dpjudas
6c57283b25 Fix null pointer crash when there is no actor 2024-09-09 02:08:33 +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
nashmuhandes
166d69164d Set the depth fade render state from sprites 2024-09-09 02:53:31 +08: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
e65b3058cf Fix mesh builder not getting cleared correctly 2024-09-07 04:14:22 +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
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
dpjudas
d77b9c1e2b Include 3d floors in level mesh limits 2024-09-03 01:09:50 +02:00
Magnus Norddahl
4ba0b47665 Dont draw sectorstack atm 2024-09-01 23:01:39 +02:00
dpjudas
c71261bd0f Forgot color write was disabled for the first draw 2024-09-01 22:49:45 +02:00
dpjudas
4666fa6241 Split masked from opaque in the level mesh draw lists 2024-09-01 22:44:25 +02:00
Magnus Norddahl
75dd9e13c9 Fix line portals drawn as opaque 2024-08-30 21:58:13 +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
Magnus Norddahl
dedd7245f2 Fix wall portals not getting freed 2024-08-26 02:05:38 +02:00
Magnus Norddahl
e94bd7f641 Fix 'Could not find space in level mesh buffer' error
Interpolate sector height updates
2024-08-26 00:49:30 +02:00
Magnus Norddahl
03e36e9d38 Fix polyobj height 2024-08-25 15:48:17 +02:00
Magnus Norddahl
944c6994b7 Update polyobjs every frame (wtb UpdateLevelMesh notification about this) 2024-08-25 15:10:30 +02:00
Magnus Norddahl
a4b57c5fbe Also apply the alpha scale to sprites 2024-08-25 14:54:58 +02:00
Magnus Norddahl
cd2fdb0cd9 Apply light alpha to intensity 2024-08-25 14:50:51 +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
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
Boondorl
10d0f94972 Misc network fixes
Fixed missing teleport specials when predicting. Added rubberband limit; if too far away from the predicted position, will instead instantly snap the player's view to their new spot. Deprecated cl_noprediction; this was pointless as you'd never not want to predict your position/angles. Fixed angle targets not being backed up. Fixed oldbuttons not being set. Updated menu
2024-07-07 01:33:37 -03: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
nashmuhandes
2e4bf697b8 Add X, Y and Z offsets for VOXELDEF. Needed for voxelized weapons which would typically be very large and take up the majority of the 256x256x256 canvas, therefore making precise positioning of the models relative to the screen pretty much impossible without tweakable offsets. 2024-06-21 08:17:54 -03: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