Commit graph

24038 commits

Author SHA1 Message Date
NepDisk
1a0074473d Put hw sky rendering code in hw_sky.c
https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1773/diffs\?commit_id\=19c73a3903b942b1459eb1e93ce36fcf9a1a3c53
2026-03-06 01:52:28 -05:00
NepDisk
23f6d025a2 Remove HWR_InitTextureMapping and related tables
https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1773/diffs\?commit_id\=929925771c0a8602f2747f2523d35c6c9d7d6382
2026-03-06 01:43:51 -05:00
NepDisk
00679aea18 Remove unneeded OGL defines 2026-03-06 01:40:03 -05:00
NepDisk
59b0a77cf1 Port updated HUD tracking system from RR
Minus tooltips since we don't have the RR c++ draw namespace yet...
Also this cleans up both object trackers that are used to be only called on object spawn and removal.
2026-03-06 01:15:23 -05:00
yamamama
6e99c9b5cd Merge pull request '[FEAT] Affine sprite rendering' (#223) from softwarehell into next
Reviewed-on: https://codeberg.org/NepDisk/blankart/pulls/223
2026-03-06 06:41:00 +01:00
yamamama
ea505f9428 Some quick cleanup 2026-03-05 23:47:28 -05:00
yamamama
0ebe6f2f4d Affine brightmaps 2026-03-05 23:38:46 -05:00
yamamama
5a648dd91a Make Software use OpenGL's pivot-differencing
Software is a renderer I fully believe was crafted by the deranged
2026-03-05 23:38:46 -05:00
yamamama
a23fb11a45 Remove old debug print 2026-03-05 23:38:46 -05:00
yamamama
951c43d1e8 Add an option for mosaic affine rendering
Currently software only; would require a shader or more "involved" solution for OpenGL
2026-03-05 23:38:46 -05:00
yamamama
cb578f423d Remove extraneous dc_copy checks, fix rolling offsets 2026-03-05 23:38:46 -05:00
yamamama
7ef15619d6 Kill AFFINEPAPER and move the affine RF2s to standard renderflags 2026-03-05 23:38:46 -05:00
yamamama
066aa94ef4 R_DrawColumnAffinePixel *actually* draws the pixels now 2026-03-05 23:38:46 -05:00
yamamama
1af1a7290d Lore-accurate affine columdrawer 2026-03-05 23:38:46 -05:00
yamamama
3d229f3768 Fix affine sprites "dissolving" in Software 2026-03-05 23:38:46 -05:00
yamamama
143af29983 I forgot: rolling offsets aren't fixedpoint
:holdingbugtears:
2026-03-05 23:38:46 -05:00
yamamama
354564ee9b Missed a spot 2026-03-05 23:38:46 -05:00
yamamama
00a9e94161 Make affines respect SPRTINFO
"Things yama forgets about until the last minute"
2026-03-05 23:38:46 -05:00
yamamama
de8f2e40da Toggle for affine pre-scaling
Now you can choose between sane rotation + scaling, or SRB2 rotation + scaling
Hooray?!
2026-03-05 23:38:46 -05:00
yamamama
3880139feb "Fake rollangle" rotating 2026-03-05 23:38:46 -05:00
yamamama
afacf55067 FF_AFFINEPAPER and RF2_AFFINEPAPER
He made a BANDAID so TRASH even his TEAM clowned him
2026-03-05 23:38:46 -05:00
yamamama
ac5cc2eaaa Experiment - make ALL sprites use affines
Per internal talks
2026-03-05 23:38:46 -05:00
yamamama
d650014fd6 Get rid of software affine debug values 2026-03-05 23:38:46 -05:00
yamamama
98efe198ac Make S-Monitor's aura affine 2026-03-05 23:38:46 -05:00
yamamama
1c932778db r_things cleanup 2026-03-05 23:38:46 -05:00
yamamama
7792079fbc OGL affines
We lose hardware spritesplits in the process; I do not care
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
5437aa3242 Use the OpenGL method for highresscale
Why are we scaling it down *twice?*
2026-03-05 23:38:46 -05:00
yamamama
7ad5ce13db Make player ghostmobjs affine 2026-03-05 23:38:46 -05:00
yamamama
1e06866a9e FF_AFFINESPRITE and affine papersprites 2026-03-05 23:38:46 -05:00
yamamama
0e05031fb7 Fix that weird cutoff alignment issue 2026-03-05 23:38:46 -05:00
yamamama
9f3c2596d1 More crap
Trying to fix a horizontal screen clip bug
2026-03-05 23:38:46 -05:00
yamamama
6496539084 Expose RF2_AFFINE to Lua 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
aeadb21ad3 Add affine renderflag
Guest starring: even MORE flag variables!
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
05508fbb58 Fix spryscale alignment 2026-03-05 23:38:46 -05:00
yamamama
1b90be2901 Disable drawarea fills 2026-03-05 23:38:46 -05:00
yamamama
48ec1c977d Mostly fix vertical alignment
spryscale still has alignment issues
2026-03-05 23:38:46 -05:00
yamamama
f3287a8e38 Fixed alignment 2026-03-05 23:38:45 -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
yamamama
40d9ce7e71 Make affine patch drawing use dynamic clipping
The whole thing can actually draw in Software now!
2026-03-05 23:38:45 -05:00
yamamama
bd1e0fc013 Prelim
Add affine bounding struct, move affine_t to r_defs, add affine and bounding to drawcolumndata_t
2026-03-05 23:38:45 -05:00
NepDisk
0d92193300 Fix enalbed typo 2026-03-05 11:51:44 -05:00
yamamama
ad1642ecfa Make Hard the default gamespeed, tweak Auto gamespeed to match
It's 2026, and the only time since Super Mario Kart where 150cc is made unlockable is a god-damned arcade game

Plus, it literally makes more sense for Expert (200cc) to be the unlockable speed now
2026-03-04 06:35:59 -05:00
NepDisk
a8b4ad269d Init more surfs 2026-03-03 20:03:14 -05:00