Christoph Oelckers
77d74a11d1
- removed most templates.h includes.
2021-10-30 10:49:12 +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
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
bdb35e5e86
Fix some r_scene_multithreaded crashes
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
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
68630d6782
- sanitized dependencies of the softpoly render backend.
...
This included half the game state and lots of unneeded parts of the software renderer.
The two modules that are shared between softpoly and the classic software renderer have been moved to a neutral place.
2020-04-29 18:48:15 +02:00
Christoph Oelckers
ddef3f7b98
- made video base code game independent
2020-04-28 22:54:53 +02:00
Christoph Oelckers
9593cb56ae
- decoupled the software renderer entirely from FTexture - it will only look at FSoftwareTexture now, all access to the texture manager has been wrapped.
2020-04-19 10:57:45 +02:00
Christoph Oelckers
f8e9cb8fbc
- major dependency reduction of the texture system.
2020-04-11 20:20:37 +02:00
Christoph Oelckers
7243495b16
- moved special color maps to utilities.
...
The default tables are needed by the texture compositor which should be universal, so this needs to be, too.
2020-04-11 20:19:52 +02:00
Christoph Oelckers
05d8856fe0
- moved file system implementation to 'common'.
2020-04-11 14:00:20 +02:00
Christoph Oelckers
6996d54a23
- moved more code to 'common'.
...
This is all low level utilities with no dependencies on game logic. Having this in a separate directory makes sharing with Raze a lot easier.
2020-04-11 14:00:12 +02:00
Christoph Oelckers
b0ecb02d6b
- move SuperFastHash to its own set of files, instead of having this tied to the console.
...
- replace swapvalues with std::swap globally.
- added some additions to utility code from Raze, mainly to reduce file content differences.
- reduced some unused utilities
2020-04-11 14:00:10 +02:00
Magnus Norddahl
310ef73aa8
Rename PolyTriangleDrawer to PolyCommandBuffer and make its interface look like one
2019-12-07 23:15:12 +01:00
Magnus Norddahl
44c2223c2f
Draw 8-bit software renderer with polybackend (well, sort of!)
2019-12-02 01:07:28 +01:00
Magnus Norddahl
4a25c9f69b
Merge remote-tracking branch 'origin/master' into polybackend
2019-12-01 20:09:19 +01:00
Magnus Norddahl
236b476933
- change ProjectedWallTexcoords to use gradients for its texture coordinate calculations
...
- change SpriteDrawerArgs to draw a full sprite instead of one column at a time
- add r_noaccel cvar to allow forced software rendering of the psprites (useful for debugging and also one person on the forum actually requested this feature)
- remove FWallTmapVals and calculate texture coordinates directly from FWallCoords
- move portal clipping out of the inner sprite drawing loop
2019-11-20 04:50:24 +01:00
Magnus Norddahl
608895dae7
Fix fog boundary drawing for 3d floors and add a few helper functions to RenderDrawSegment
2019-11-15 03:41:10 +01:00
Magnus Norddahl
642cd2b160
Fix 3d floor rendering bug
2019-11-14 02:28:53 +01:00
Magnus Norddahl
88848f1d59
Add some helpers on DrawSegmentClipInfo
2019-11-13 04:17:46 +01:00
Magnus Norddahl
72bba914ce
Move drawseg clipping variables to DrawSegmentClipInfo
2019-11-12 19:46:45 +01:00
Magnus Norddahl
62ec165d28
Further isolate texture coordinate calculations to r_wallsetup
2019-11-08 03:46:07 +01:00
drfrag
634ef60c78
- Fixed player sprites not being affected by sector light level in the classic software renderer.
2019-09-28 10:31:27 +02:00
Magnus Norddahl
a1229be5c6
- implement camera textures
2019-05-29 05:45:19 +02:00
Magnus Norddahl
0d8d50c23e
- fix viewport location
...
- add scissor support
2019-05-27 16:51:54 +02:00
Magnus Norddahl
48d2d423f6
- remove softpoly scene drawer
2019-05-22 17:16:07 +02:00
Magnus Norddahl
cace5079fe
- oops, patched the wrong file
2019-05-09 16:06:18 +02:00
Magnus Norddahl
d0c4f28162
- only write the warning if r_multithreaded has its default value
2019-05-09 16:01:39 +02:00
Magnus Norddahl
7727263599
- Write out a warning if std: 🧵 :hardware_concurrency returns zero.
...
- If the number of cores cannot be determined, turn of multithreading in the software renderer as it is most likely a low end system
2019-05-09 15:57:23 +02:00
alexey.lysiuk
56557a17f1
- fixed output of software renderers with Vulkan backend
...
Vulkan hardware buffer for software canvas may have some padding
Software renderers should be aware of buffer's pitch in order to copy pixels properly
https://forum.zdoom.org/viewtopic.php?t=64562
2019-05-08 22:02:05 +03:00
Christoph Oelckers
2dc12aef71
- removed the NetUpdate calls from the software renderer.
...
These can cause highly dangerous recursions and execute play code deep inside the renderer and since the hardware renderer does not have these, there is very little point for the software renderer to retain them.
2019-03-31 09:02:11 +02:00
Christoph Oelckers
1a29d39355
- do not render player sprites to canvases in the software renderer.
...
This applies to both savegame images and camera textures.
2019-03-09 12:12:33 +01:00
Christoph Oelckers
0b2494f9ca
- fixed: The global viewpoint's Level member was accessed before it was set.
...
All affected code needs to get a Level parameter passed in through its arguments.
2019-02-08 13:12:46 +01:00
Christoph Oelckers
89d607c9a6
- moved all rendering code into a common subdirectory.
...
No changes to the files themselves was made.
2019-01-31 19:58:17 +01:00