Commit graph

31 commits

Author SHA1 Message Date
yamamama
d650014fd6 Get rid of software affine debug values 2026-03-05 23:38:46 -05:00
yamamama
307e334e27 And the rest
- Vertical flips
- A proper fix for ceiling offsets/sprite splits
- Baked offsets, rolling offsets, offsets in general (saltyhop works again!)
- Did a few races, can't find any visual bugs of note

OpenGL implementation (hopefully) soon
2026-03-05 23:38:46 -05:00
yamamama
1e06866a9e FF_AFFINESPRITE and affine papersprites 2026-03-05 23:38:46 -05:00
yamamama
3a81063d7f Colormaps and splitting
Papersprites are all that remain
2026-03-05 23:38:46 -05:00
yamamama
402b48342b Translucent affine functions
Up next is... column splitting. Dear god.
2026-03-05 23:38:46 -05:00
yamamama
e802de23df Move affine pixel lookups to R_DrawColumnAffinePixel
Turns out the secret sauce is a... recursive function
Colormap translations work, jury's still out on if translucency and brightmaps do
2026-03-05 23:38:46 -05:00
yamamama
def663e566 Extremely basic templating prelim
It builds and *doesn't* segfault; I can finally sleep!
2026-03-05 23:38:46 -05:00
yamamama
1b90be2901 Disable drawarea fills 2026-03-05 23:38:46 -05:00
yamamama
b86e3416e5 Draw area system works, need to fix alignment 2026-03-05 23:38:45 -05:00
yamamama
3c961033ca patrick_mouth 2026-03-05 23:38:45 -05:00
yamamama
1996395de8 Affine sprite drawing
Kudos to Generic
2026-03-05 23:38:45 -05:00
NepDisk
3b298c2a25 Vendoring Tracy again
Having this as a submodule is causing issues
2026-02-21 12:36:05 -05:00
NepDisk
b4ffbe8ba4 Move tracy and libbacktrace to submodules 2026-02-19 16:06:24 -05:00
NepDisk
fbf10dbf9e More optimized code path for different pow2 sizes 2025-10-19 16:54:06 -04:00
Alug
a802a49647 rename to stride
more sensible name in this new case
2025-10-19 21:06:34 +02:00
Alug
6b31428b08 use DEFINE_COLUMN_COMBO macro for flush function definitions 2025-10-19 21:04:36 +02:00
Alug
bad7b9f980 remove unused hires variable from drawcolumndata 2025-10-19 20:40:51 +02:00
Alug
e8e72db32f fix columnbuf crashes
-our buffered uhh buffer needs to be only advanced per column not per screenwidth, caused the buffer to advance beyond its boundaries

-brightmap drawers get the DC_DIRECT flag to make sure they never attempt to draw buffered

removed tempbuffer alignment for now as reported by ubsan
2025-10-19 20:38:22 +02:00
NepDisk
659aa667eb Software Renderer: Implement Column buffering system
A port of https://github.com/Indev450/SRB2Kart-Saturn/pull/205, currently doesn't work
2025-10-19 12:12:33 -04:00
NepDisk
39e17bce4b remove ylookup, columnofs and topleft lookups
based on 2da89f1946
move screens array to vid struct
remove a bunch of unused stuff

this speeds up 4 player splitscreen ever so slighty
mostly just alot cleaner than the mess it was before
2025-10-18 13:04:39 -04:00
NepDisk
f7378caf66 Use more vars for multireads to vid.height and vid.width 2025-10-17 10:53:45 -04:00
NepDisk
bfa463934f Fix pixel shift caused by negative pixel positioning in software 2025-08-13 19:15:40 -04:00
NepDisk
7907945002 Major Softwaremode speedboost 2025-08-09 13:25:02 -04:00
NepDisk
feb4819b72 Fix software sprite drawing error from bad copy paste 2025-07-03 10:54:56 -04:00
NepDisk
0bf360a82e Some cherrypicks from SRB2 Classic's 'Faster software drawing'
-Textures with 0 height are not checked for wraps, this helps speed up multipatch columns.
-A useless call to R_FakeFlat has been removed.
-Slopes now use floats rather than doubles to calculate UV coordinates.
2025-07-02 21:38:35 -04:00
NepDisk
ed7b667aa7 Update File headers to use BLANKART 2025-04-19 13:33:28 -04:00
NepDisk
57c4cc6df1 Use some rendering code from durrr 2024-12-30 13:10:51 -05:00
Oni
ac2b3651ae Merge branch 'fix-column-fix' into 'master'
R_DrawColumn_Template: fix non-po2 column drawing

Closes #1033

See merge request KartKrew/Kart!1913
2024-12-29 15:58:35 -05:00
James R.
6191c392e5 Merge branch 'r-draw-column-minor-optimization' into 'master'
R_DrawColumnTemplate: minor optimization for non-power-of-2 textures

See merge request KartKrew/Kart!1854
2024-12-29 15:57:30 -05:00
Oni
5c48744842 Merge branch 'templated-drawing' into 'master'
Use C++ templates for DrawColumn/Span

See merge request KartKrew/Kart!1728
2024-12-29 15:56:33 -05:00
Sally Coolatta
397f79fcbf Use C++ templates for DrawColumn/Span
Two reasons:
- Makes it more straight-forward to add brightmaps to the non-power-of-two rendering functions.
- Made it easier to split off brightmap rendering. Hopefully improves performance, but I haven't thoroughly tested this.
2024-12-29 15:19:24 -05:00