Commit graph

138 commits

Author SHA1 Message Date
Sally Coolatta
9b6aa946ea Merge remote-tracking branch 'srb2/master' into the-scary-22-merge 2020-10-24 19:28:06 -04:00
Sally Coolatta
dfd733eb80 Up to screen.o
Lots of renderer files I didn't need to touch at all here :)
2020-08-15 00:55:30 -04:00
Sally Coolatta
f9ca40e673 Merge branch 'master' into the-scary-22-merge 2020-08-12 20:59:09 -04:00
Sally Coolatta
3f1d58754e Merge r_things.c/h
Includes r_skins, obviously, but also a little bit of m_cond to make availabilities better for kart's purposes
2020-08-08 19:08:19 -04:00
Sally Coolatta
ef2579f2b3 Merge branch 'master' into draw-flags 2020-07-20 13:38:48 -04:00
Latapostrophe
cab9c2a139 Merge branch 'v2-master' into followme-internal 2020-06-07 23:56:32 +02:00
Sally Coolatta
63917ffccc The start of the scary 2.2 merge
All conflicts are left in-tact. We should be collaborating on solving these files one at a time.
2020-05-29 13:43:38 -04:00
Jaime Passos
c69a4f9ced Merge remote-tracking branch 'origin/next' into pictureformats 2020-05-15 01:34:54 -03:00
Latapostrophe
2bee969c6a Add follower bubbles with the BUBBLESCALE field 2020-05-11 00:16:13 +02:00
Sally Coolatta
22afa68651 Rivals system
You can input a predetermined list of rivals for each character, up to 3. In S_SKIN: `rivals = sonic,tails,knuckles`. Can support skin names from addons without throwing warnings.
2020-05-09 21:55:50 -04:00
Latapostrophe
766f7f035f Let followers change colour separatly from players 2020-05-04 18:08:41 +02:00
Latapostrophe
63485c3dbe Merge branch 'v2-master' into followme-internal 2020-05-03 22:37:26 +02:00
Latapostrophe
4c8d373962 Fix followers in anti gravity 2020-03-29 16:40:21 +02:00
Latapostrophe
4c1459cd4e Chaos Conflicts 2020-03-29 12:14:27 +02:00
James R
1b6256bd89 Use the 2.2 frame characters 2020-03-28 20:57:27 -07:00
toaster
c74dde0f0f Minor optimisations surrounding R_DrawFlippedMaskedColumn.
* Replace the texheight parameter provided directly to it with a previously existing (now renamed) global used for the same purpose, so that it can be used as an interchangeable function pointer with R_DrawMaskedColumn.
* Using the above, optimise R_DrawVisSprite to call a function pointer in a tighter loop rather than check SC_VFLIP each time around.
* SHORT macro can involve repeated operations; calculate once and put in memory for both RANGECHECK and papersprite.
* Remove irrelevant range check (already covered by existing range check immediately above) from R_DrawFlippedMaskedColumn and R_DrawMaskedColumn.
* "Warning: avoiding a crash in %s %d" is a terrible error message, and it chips away at the tightness of the loop just for something most people will never see printed. Replace with a PARANOIA I_Error in case someone actively wants to go hunting for its cause.
2020-03-26 16:09:19 +00:00
Monster Iestyn
34c4da018a Reorganise r_things.h 2020-03-08 21:17:30 +00:00
Monster Iestyn
9013398151 Create r_skins.c/.h, to contain skins code formerly in r_things.c/h 2020-03-08 19:32:07 +00:00
Jaime Passos
81a57d5fac Merge remote-tracking branch 'origin/next' into pictureformats 2020-03-07 20:43:16 -03:00
Sally Cochenour
18637b9eb2 2.2 shadow port 2020-03-01 22:12:50 -05:00
James R
2274129f57 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
Jaime Passos
b0ce2e088f Merge remote-tracking branch 'origin/next' into pictureformats 2020-02-19 02:25:36 -03:00
James R
ff2ec925ee Merge remote-tracking branch 'origin/master' into next 2020-01-30 23:54:56 -08:00
Jaime Passos
41840f6375 Merge remote-tracking branch 'origin/next' into pictureformats 2020-01-20 16:53:41 -03:00
James R
a1a6956618 Duplicated code is gone, so sad 2020-01-17 20:53:36 -08:00
fickleheart
ad9bec06e6 Merge remote-tracking branch 'upstream/next' into software-dropshadows 2020-01-11 17:09:57 -06:00
Monster Iestyn
54f1cd601e Merge branch 'master' into next 2020-01-11 18:38:09 +00:00
Jaime Passos
a6472c2ffb Merge remote-tracking branch 'origin/next' into pictureformats 2020-01-10 04:11:26 -03:00
fickleheart
9df5d1d0e3 Refactor shadow floor finding code a bit
I tried to fix ring shadows on polyobjects and got this in return:
https://media.discordapp.net/attachments/629477786943356938/664695818913185822/srb20156.png
2020-01-08 23:19:52 -06:00
fickleheart
d1793e8952 Stop misusing papersprite vars for sprite skew 2020-01-08 21:52:10 -06:00
fickleheart
0ea9b26b97 Prevent linkdraw sprites from connecting to shadows 2020-01-08 21:37:38 -06:00
fickleheart
4fcae66242 Make papersprite projection completely correct in software
I heard properpaper had some weird crashes? I couldn't reproduce
them no matter how hard I tried, but I added some bounds checking
to this version too just in case. Gotta get other people's help
to try to reproduce those.
2020-01-08 21:14:07 -06:00
toaster
336b6ad85e Hexafaceted sprite angle support (See merge request description coming soon).
Also, some minor memory efficiency fixes to both rotsprite and ordinary sprite rotations.
2020-01-08 20:49:14 +00:00
Jaime Passos
4e0810e8a3 Picture formats test 2020-01-06 18:22:23 -03:00
Steel Titanium
a5cdb0a4b3 Update copyright date on source files 2019-12-06 13:49:42 -05:00
Jaime Passos
7f4df99b2d Hopefully the last time this week I'll ever touch these files 2019-11-06 20:41:55 -03:00
Jaime Passos
1c46be78af add r_patch.c 2019-10-28 15:28:42 -03:00
Jaime Passos
41ff5ef79c sprite2info soc yummy yummy yes 2019-09-29 19:03:10 -03:00
Jaime Passos
dfe05a650c hehee 2019-09-29 12:13:51 -03:00
Jaime Passos
c02c7fb28b JIMITA DO THE SOC 2019-09-28 19:13:51 -03:00
Jaime Passos
e2ce3988fb Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-09-28 12:14:55 -03:00
toaster
667dcd5bca Continue screen! With aaaaaall the new assets to go with it.
* https://cdn.discordapp.com/attachments/428262628893261828/621129794045870108/srb20077.gif
* https://cdn.discordapp.com/attachments/428262628893261828/621129785124585502/srb20078.gif
* I will be accepting no further questions at this time.
2019-09-11 00:50:51 +01:00
Jaime Passos
402012e973 I 2019-08-18 14:16:48 -03:00
toaster
74c32c1b2b A good and bad ending cutscene now exist.
Also:
* SPR2_XTRA - instead of defining lumpnames in S_SKIN, those kinds of assets can just be bundled into the spriteset. Required for ending cutscene stuff, I guess, but also done for HUD life icon and character select image (aside from Sonic&Tails, still SOC'd in).
* Minor oversights in SPR2 support corrected.
* Better evaluation, featuring ending assets.
* Intro has warping-in blackrock, reusing ending assets.
* Cutscene text now supports lowercase (intro and custom).
* Disable the asset-fucking "gamma correction" I put in over two years ago when implementing colour cube. (This is the only thing I could move into another branch if you MUST, but it's basically invisble in the diff so w/e.)
* Don't blank the screen if the top left pixel of a screen-covering patch is transparent. (Checked via nonzero topdelta for first column)

Bugs:
* OPENGL ONLY: The first ~20 frames of both endings are fucked. A little help here? Might be HWR_DrawFadeFill's fault, which I just created. OR it could be in f_finale, but I doubt it, since it doesn't appear in Software.
2019-07-28 00:32:57 +01:00
TehRealSalt
a6ef3c12b0 Seperate MF2_DONTDRAW and MF2_SHADOW into it's own varied set of flags -- drawflags.
- Split MF2_DONTDRAW into MFD_DONTDRAWP[1-4], also replaces MFE_DRAWONLYFORP[1-4].
- Split MF2_SHADOW into MFD_FULLBRIGHT and MFD_TRANS80. I also added an entire spectrum of options for transparency & brightness overrides, since I've found myself wishing for stuff like that before.
- Tethering was updated for it's client-sided drawing to apply to splitscreens too.
- Removed cv_transparency.

The transparency overrides don't seem to work yet (obvious on things using MFD_SHADOW), just running out of time to look into it so I'm pushing what I have.
2019-07-17 23:55:39 -04:00
Nev3r
da09a07e6e viewx/viewy also need to be stored/restored. 2019-06-06 13:31:48 +02:00
Nev3r
819169f378 Vissprite clipping improvements.
Vissprites are now only clipped against their respective portal's geometry obtained from their BSP run.
Additionally, if a portal is provided, they're clipped to the portal's clip boundaries.
The work on this branch should conclude after a pair of remaining glitches are fixed.
2019-06-05 18:07:08 +02:00
Nev3r
906b366e1b Masked elements are now fully grouped individually for each portal/view; fixed viewz-related glitches,.
The drawnodes are now fully grouped in separate lists, and then sorted individually. This fixes sorting problems caused by portals belonging to differently perceived scales (skyboxes for example).

Drawsegs and vissprite/drawnode sorting require the viewz, so the viewz is stored for each portal/view, and then restored when needed; without this, the rendering process erroneously sorts the elements, and draws some at wrong positions.
2019-06-05 12:10:59 +02:00
Nev3r
96cfecc41a Created drawnode lists for each view/portal.
Each shall eventually have its specific vissprites/drawsegs; currently only drawsegs are stored in their correct list, vissprites are stored in the first list as a placeholder.
The idea is to sort each list individually, and then render their masked elements, starting from the last drawnode list.
This retains a non-recursive function calling method while still rendering things in order.
2019-06-04 20:15:42 +02:00
Latapostrophe
c83127293b resolve conflict in m_menu 2019-05-12 10:48:54 +02:00