Commit graph

193 commits

Author SHA1 Message Date
Christoph Oelckers
f0fbdba593 - disable implicit conversions from float to TAngle 2022-08-26 18:01:26 +02:00
Christoph Oelckers
93e934c8d0 - removed the Softpoly backend.
Its only relevant use case has been to use the software renderer on hardware not capable of OpenGL 3.3, but a large chunk of that can now be serviced with GLES.
In addition it has ceased further development and has not received any of the recent 2D render features which further reduces its viability.
2022-07-28 10:31:56 +02:00
Christoph Oelckers
595975fcc7 - did a test compile as C++20 and fixed all warnings that got emitted. 2022-07-15 09:17:50 +02:00
Sally Coolatta
67127e4cce Bugfix for retro software mode mirrors not working 2022-06-23 07:47:04 +02:00
nashmuhandes
593627f049 Add +ONLYVISIBLEINMIRRORS and +INVISIBLEINMIRRORS actor flags. The former makes the actor only visible in reflections, while the latter makes the actor not cast reflections in mirrors. 2022-06-22 09:36:04 +02:00
RaveYard
f9bf6f9311 Implement FVector ZScript for Actor Scale 2022-06-12 17:57:44 +02:00
Christoph Oelckers
e266fb1c16 - removed all vid_fps offsetting.
To compensate there is now also a "stat fps" which displays the FPS rate in the lower left corner. This had to go because unconditionally altering positions was causing problems with custom HUDs.
2022-06-05 12:16:56 +02:00
Christoph Oelckers
344c6348fd - sprite lightlevel cleanup and fixes.
* consolidated the getter functions on the game data side
* better handling of per-sprite lighting with fog
* allow negative values for additive per-sprite lighting.
* also fixed return type of UpdateWaterDepth.
2022-06-01 08:37:13 +02:00
Christoph Oelckers
21c60c931e - warning fixes and cleanup from old startscreen branch. 2022-06-01 08:36:59 +02:00
Magnus Norddahl
6670bc09b9 Create a MainWindow class that manages the main win32 window of the application 2022-06-01 08:36:59 +02:00
Major Cooke
3d14cec191 Added ADDLIGHTLEVEL to add the sector light level to an actor's own defined light level, if desired. 2022-05-31 21:00:31 +02:00
Major Cooke
d5e448671d Added LightLevel.
- Setting it to any value > -1 will override the sector's light level.
2022-05-31 21:00:31 +02:00
Sally Cochenour
bb42e541e9
MASTERNOSEE flag (#1601)
Makes it so that if an actor's master is invisible due to camera/mirror/portal shenanigans, then the actor will also be invisible. Name based off of an Unreal Engine flag that does the exact same thing.

Co-authored-by: Christoph Oelckers <coelckers@users.noreply.github.com>
2022-05-31 12:34:15 +02:00
Sally Coolatta
a98c1efc26 Add WorldOffset field
Adjusts the thing's 3D position on render side. This allows for adjusting a thing's visual position without impacting their hitbox.

# Conflicts:
#	src/playsim/p_mobj.cpp
2022-05-31 10:14:32 +02:00
Nikolay Ambartsumov
85d68b30bb Fix 3d floor-related crash in software renderer
3d floors can cause the software renderer to set incorrect
sprite clipping values that trigger a buffer overflow (and
a subsequent crash) when rendering sprites. This commit
keeps the clipping values within the view area.
2022-02-20 08:11:26 +01:00
Nikolay Ambartsumov
df976e218e Add per-tier sidedef light levels to UDMF maps 2022-01-26 18:25:04 -05:00
Xaser Acheron
441b70022d apply weaponscale relative to baseline 2021-11-15 01:52:49 -06:00
Xaser Acheron
0b93aef776 add WeaponScaleX/WeaponScaleY properties for applying global scaling to a weapon's PSprites 2021-11-14 23:21:07 -06:00
Christoph Oelckers
77d74a11d1 - removed most templates.h includes. 2021-10-30 10:49:12 +02:00
Christoph Oelckers
1d0aed219e - replaced MIN/MAX in all non-common code. 2021-10-30 10:16:52 +02:00
Christoph Oelckers
226666ce7f - replaced MIN/MAX with min/max from the C++ standard library in the software renderer 2021-10-30 10:08:11 +02:00
Christoph Oelckers
109069f718 - removed the unused palette parameter from the V_GetColor family of functions. 2021-08-14 09:57:23 +02:00
Jeroen de Baat
8ac8e31a61 Fix typo in sw renderer comment 2021-07-21 20:58:41 +02:00
drfrag
d9db8984af - Fixed crash calling ChangeSky() with an invalid texture. 2021-05-29 15:07:45 -04:00
nashmuhandes
5446a1a355 Add sprite shadows for the software renderer 2021-04-24 22:40:54 -04:00
Magnus Norddahl
61d49a2007 Fix texture loading race condition and improve performance by only locking the load mutex if data hasn't already been updated for this frame 2021-03-26 07:09:33 -04:00
Magnus Norddahl
d1f47afd96 Add debug code for showing the render slices 2021-03-26 07:09:33 -04:00
Magnus Norddahl
272ca6cd92 Fix truecolor drawer crash 2021-03-26 07:09:33 -04:00
Magnus Norddahl
e7476e5dac Fix fullbright shade bug 2021-03-26 07:09:33 -04:00
Magnus Norddahl
bdb35e5e86 Fix some r_scene_multithreaded crashes 2021-03-26 07:09:33 -04:00
Magnus Norddahl
fb87f90d86 Fix some r_scene_multithreaded related bugs 2021-03-26 07:09:33 -04:00
Magnus Norddahl
4cd994c027 Remove threading from the drawers 2021-03-26 07:09:33 -04:00
Rachael Alexanderson
6e5dbbc8ec Revert "Merge dpJudas's renderslices branch (#1356)"
This reverts commit a5cba1aba5.
2021-03-26 07:08:31 -04:00
Xaser Acheron
a5cba1aba5
Merge dpJudas's renderslices branch (#1356)
* Remove threading from the drawers

* Fix some r_scene_multithreaded related bugs

* Fix some r_scene_multithreaded crashes

* Fix fullbright shade bug

* Fix truecolor drawer crash

* Add debug code for showing the render slices

* Fix texture loading race condition and improve performance by only locking the load mutex if data hasn't already been updated for this frame

Co-authored-by: Magnus Norddahl <dpjudas@users.noreply.github.com>
2021-03-25 20:58:08 -04:00
Magnus Norddahl
3b7ada83bf Fix black wall sprites 2021-02-14 14:05:52 -05:00
Magnus Norddahl
2855b1c4ae Fix line portal clipping bug 2021-02-14 13:59:35 -05:00
drfrag
97a4080496 - Amend previous commit: fix the wallsprites crash. 2021-02-13 12:34:31 -05:00
Magnus Norddahl
1a5f0fd40a Fix Additive Shaded renderstyle for UDMF things bugged 2021-02-13 12:32:28 -05:00
Rachael Alexanderson
4100251e25 - another wallsprite crash fix: https://forum.zdoom.org/viewtopic.php?f=56&t=71450 2021-02-12 06:49:47 -05:00
Magnus Norddahl
d7924d6e9d Fix dancing sprites regression 2021-02-11 23:05:08 -05:00
alexey.lysiuk
6d47d79e22 - removed useless x86.h #include's 2021-02-06 15:01:08 +02:00
Christoph Oelckers
572db3930d - removed unused FSoftwareTexture::GenerateBgraMipmapsFast() function. 2021-02-06 13:18:15 +01:00
Christoph Oelckers
58d8ce1a4f - cleanup of m_fixed.h.
With fixed point math barely being used anywhere with the vast majority of calls in the software voxel drawer it makes sense to reduce the function interface to the minimum possible and move the shift value into the function call as an argument.
2020-11-22 10:25:04 +01:00
Nash Muhandes
7bea14e6b2
- Add A_OverlayTranslation to set PSprite translations (#1202)
- Added PSPF_PLAYERTRANSLATED support to the software renderer
2020-10-11 17:14:06 -04:00
MajorCooke
85759e3bd0
Added A_SpriteOffset. (#895)
- Coordinates work akin to A_OverlayOffset: +X shifts to the right, +Y shifts down.
2020-08-27 12:43:09 -04:00
Christoph Oelckers
712d80006a - split game dependent parts out of menudef.cpp. 2020-06-14 00:27:32 +02:00
Christoph Oelckers
60a20af8ff - fixed code that deternines when to upscale a texture.
This was very much non-functional.
2020-06-10 00:21:19 +02:00
drfrag
65df05cba2 - fixed crash with texture upscaling in the truecolor software renderer.
Based on: 4746d0c626
2020-06-08 22:37:23 +02:00
drfrag
68e0e52aaf - Fixed crash rendering 3D floors without ceiling or floor textures in software. 2020-06-08 19:04:38 +02:00
Christoph Oelckers
b06af634e2 - added a flash component to the colormap shader.
Its main purpose is for RR's lightning flash in Raze but this looks very useful for manipulating fullscreen colormaps. Currently not exposed, though.
2020-06-07 09:16:56 +02:00