Commit graph

509 commits

Author SHA1 Message Date
Arthur
9f0b121b15 Support for 'tinyframes', and lots more optimization 2019-01-07 04:21:44 -05:00
Arthur
295ca25171 Common model format, with MD2/MD3 loading 2019-01-07 04:21:43 -05:00
SeventhSentinel
49f2d65e95 Fix errors from merge 2019-01-06 01:00:30 -05:00
SeventhSentinel
73542c008c merge srb2 next 2019-01-05 15:59:23 -05:00
mazmazz
963819c81d Initialize skinnum for MD2 star colors (fix CLANG error) 2019-01-02 19:23:57 -05:00
Jimita the Cat
892e650712 dumb 2019-01-02 01:01:57 -03:00
Jimita the Cat
e765b9400c Add support for flashpals in screenshots 2019-01-02 00:41:52 -03:00
Digiku
80e30c6aaa Merge branch 'MSVC-ARM' into 'master'
ARM and ARM64 support with MSVC toolchain

See merge request STJr/SRB2!412
2018-12-28 01:05:40 -05:00
Latapostrophe
1b61e15b1b Merge branch 'master' into SRB2-CHAT 2018-12-23 10:26:08 +01:00
Alam Ed Arias
102fd11cb4 More work to cleanup the ARM builds 2018-12-22 19:50:32 -05:00
Alam Arias
b6a917cda1 Added ARM/ARM64 to whole vc10 sln
Added ARM/ARM64 to zlib, libpng
Added ARM/ARM64 to srb2dd/srb2sdl
2018-12-21 16:47:10 -05:00
mazmazz
06ff171e19 Adjust vid.width floating point comparson for CHAT 2018-12-21 11:37:22 -05:00
Digiku
58a2cec70f Merge branch 'float_equal' into 'master'
Clear Float equal warnings

See merge request STJr/SRB2!383
2018-12-20 16:58:37 -05:00
Digiku
7982b1695a Merge branch 'ogl-zfighting-fix' into 'master'
OpenGL z-fighting fix [by Azeonus]

Closes #43

See merge request STJr/SRB2!395
2018-12-19 13:05:04 -05:00
mazmazz
96cad09db6 Change 0.05 to 0.05f 2018-12-18 16:59:59 -05:00
Azeonus
67cd6dcdd2 dispoffset OGL fix [by Azeonus] 2018-12-18 16:50:03 -05:00
Jimita
1d40676f3a
Merge branch 'master' into automap_fix 2018-12-17 17:46:29 -02:00
Alam Ed Arias
11aef0b3f1 Merge branch 'master' into float_equal 2018-12-16 13:52:45 -05:00
Latapostrophe
25e6d5388c merge conflict 2018-12-16 16:48:15 +01:00
Alam Ed Arias
15d0673685 fix compiling for clang 2018-12-14 21:31:37 -05:00
Alam Ed Arias
78634679f1 fix compiling for MSVC 2018-12-14 20:42:37 -05:00
Alam Ed Arias
6fd66bdb49 Clear float equal warnings 2018-12-14 20:34:06 -05:00
Monster Iestyn
e0079ea1a2 remove NearVertice (which was unused anyway), clean up maz's changes 2018-12-14 23:28:07 +00:00
mazmazz
abae63a64b SameVertice floating point match; fixes 64-bit OGL holes 2018-12-14 16:47:24 -05:00
Monster Iestyn
c1e0041a0b copy doom legacy's replacement for the den == 0.0 calc in fracdivline 2018-12-14 21:22:13 +00:00
Monster Iestyn
623d1574ce minor cleanup 2018-12-14 21:00:53 +00:00
Monster Iestyn
b42c306ef3 remove code from SearchDivline that was disabled ...and doesn't seem to exist anymore anyway 2018-12-14 18:14:08 +00:00
Monster Iestyn
52fd3dcbed split loading status code into a separate function 2018-12-14 18:11:30 +00:00
Monster Iestyn
02fc845a72 Make sure nptfront is explicitly > 0, so we don't alloc a poly for negative number points at all 2018-12-14 18:01:18 +00:00
Monster Iestyn
4089b6b8e9 use continue if NULL instead of a big if block if ...not NULL
also, SplitPoly returns if ps < 0, so there's no need to check for ps >= 0 afterwards
2018-12-14 18:00:08 +00:00
Monster Iestyn
3a125dbbd5 compare with actual doubles, not ints 2018-12-14 17:14:03 +00:00
MPC
6b22dc183b Fix the automap 2018-12-12 18:01:52 -03:00
TehRealSalt
5534017954 Merge remote-tracking branch 'srb2public/next' into merge-next 2018-11-29 08:49:50 -05:00
Monster Iestyn
4b0d45afd8 Merge branch 'opengl-noloading' into 'master'
Hide OpenGL loading screen

See merge request STJr/SRB2!349
2018-11-26 15:30:45 -05:00
Monster Iestyn
a71ca1d259 Merge branch 'fof-slope-skew-backport' into 'master'
FOF wall slope skewing backport

See merge request STJr/SRB2!341
2018-11-26 08:54:29 -05:00
mazmazz
930835f1a2 Dummy out OpenGL loading screen; fix console toggle so it doesn't actually show 2018-11-25 21:47:56 -05:00
Sryder
683ebec120 Rotate All MD2s to match their standing slopes
Needs to be tested in gravity flip
Also flips the normal on linedef based slopes so that it's facing the correct direction
Also makes it so slopelaunch doesn't always remove the standingslope (going down some slopes would cause it to be constantly unset and reset)
2018-11-26 00:17:34 +00:00
mazmazz
ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
Monster Iestyn
0a0336a674 Merge branch 'master' into fof-slope-skew-backport
# Conflicts:
#	src/r_segs.c
2018-11-23 22:40:28 +00:00
Alam Arias
30b9cef043
Merge pull request #326 from monster-psychic-cat/opengl_splitscreen_sky_fix
Render the skies correctly on splitscreen in OpenGL mode
2018-11-23 14:48:05 -05:00
Monster Iestyn
f7eea7ade3 Fix compiler errors 2018-11-22 20:08:57 +00:00
toaster
aa607ecf4c Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into nextmerge_again
# Conflicts:
#	src/d_clisrv.c
#	src/m_misc.c
2018-11-18 18:26:50 +00:00
Sryder
c46efa7c41 Set the screen textures to use max higher texture IDs
This should hopefully alleviate the issue where textures overwrite the screen, or the screen overwrites the texture for now.
THIS IS NOT A FULL SOLUTION TO THE PROBLEM, but I highly doubt we'll ever be loading 4 billion textures at once, ever.
2018-11-17 15:23:12 +00:00
Monster Iestyn
3e6fcf1b8b Merge branch 'opengl-hud-scale-fix' into 'master'
OpenGL HUD scaling fix

See merge request STJr/SRB2!320
2018-11-14 16:48:13 -05:00
Alam Ed Arias
f73ea4f984 Clean up warnings 2018-11-14 10:52:16 -05:00
Monster Iestyn
0d38061db8 Fix V_SNAPTOx code to consider dupx/dupy the same way as Software mode 2018-11-13 18:13:51 +00:00
Sryder
6af56273bf Merge branch 'next' of git@git.magicalgirl.moe:STJr/SRB2.git into nextmerge
# Conflicts:
#	src/d_main.c
#	src/d_main.h
#	src/d_netcmd.c
#	src/doomtype.h
#	src/hardware/hw_md2.h
#	src/p_user.c
#	src/r_splats.h
#	src/s_sound.c
#	src/s_sound.h
#	src/screen.c
#	src/sdl/i_system.c
2018-11-10 21:14:53 +00:00
MPC
eb4a72440a Render the skies correctly on splitscreen in OpenGL mode 2018-11-10 16:19:41 -03:00
toaster
45fc2c46e9 Merge branch 'fof-slope-skew-backport' of https://git.magicalgirl.moe/STJr/SRB2.git 2018-11-10 18:27:13 +00:00
Monster Iestyn
323c89dbaf fix using abs() on unsigned 2018-11-10 17:40:09 +00:00
Monster Iestyn
dd83652b71 Whoops, this broke my non-NEWCLIP test build 2018-11-10 16:10:25 +00:00
Monster Iestyn
c4569e61a8 Made some efforts to improve efficiency of new code, hard to tell if I've made it better or worse though honestly
R_IsEmptyLine is now a thing too btw
2018-11-10 16:09:21 +00:00
Monster Iestyn
1e98e3b4f2 More progress, NEWCLIP added to doomdef.h, sadly it actually all lags the game so I've disabled it for now
Other notes:
* on second thought I'll keep the hw_clip functions' gld prefixes rather than HWR, not like it matters either way
* despite the extra lag it does fix the issues with translucent walls and such when displayed at different vertical angles, such as with the GFZ1 waterfall
2018-11-10 16:08:56 +00:00
Monster Iestyn
a733a29f4c Starting work on porting hw_clip.c/h code, Makefiles and CMake can compile them at least
Other notes:
* Renamed all new functions to have HWR_ prefix instead of gld_, for consistency
* HWR_FrustrumSetup and HWR_SphereInFrustum are disabled and require HAVE_SPHEREFRUSTRUM. This is because 1) SRB2CB did not need the code, so presumably neither will we, and 2) there are some OpenGL API functions used there that due to our way of using OpenGL we don't use outside of r_opengl.c, which makes dealing with HWR_FrustrumSetup complicated in theory
* The new clipping functions are not added to OpenGL's "main" rendering code itself just yet, they're just available to use now once hw_clip.h is included
2018-11-10 16:08:26 +00:00
Monster Iestyn
925a56ad98 Merge branch 'opengl-improvements-backport' into 'master'
Opengl improvements backport

See merge request STJr/SRB2!304
2018-11-10 09:25:18 -05:00
TehRealSalt
499faec555 Merge remote-tracking branch 'srb2public/next'
(Huge change: NO_MIDI is now a define, simply because that makes it easier for me to resolve merge conflicts if I can see the original code and the new code. Also means that people who REALLY miss MIDI can compile & fix it themselves :P)
2018-11-07 16:15:14 -05:00
Monster Iestyn
2fa0896fd0 Fix an error I made in HWR_DrawFixedPatch 2018-10-30 13:44:01 +00:00
Monster Iestyn
b022ff02a5 add missing SHORTs in HWR_DrawPatch and HWR_DrawCroppedPatch as well 2018-10-29 13:34:54 +00:00
Monster Iestyn
f8fd8f8ec5 HWR_DrawFixedPatch: Add V_OFFSET support for V_FLIP in hardware code as well, also add missing SHORTs for gpatch fields 2018-10-29 13:29:16 +00:00
toaster
8b382d2e40 As requested by Jeck:
* gr_md2 on the menu.
* Disable interpolerated model option completely for now.

Also, tweaked the GL menus a bit to suck less, since I was ferreting around in that area.
2018-10-27 21:16:19 +01:00
Monster Iestyn
32077897b6 Removed all remaining traces of VID_X11 code in hw_drv.h and hw_data.h, the macro is no longer used by Linux etc versions of SRB2.
Unlike the rest of the commits in this branch (as of writing), I didn't make this commit between 1 and 2 years ago, I made it right now ;)
2018-10-27 19:58:51 +01:00
Monster Iestyn
aebcf3520b Remove pointless drawtextured variable and redundant fake planes checks (R_FakeFlat would already have made gr_frontsector/backsector something else if they were) 2018-10-27 19:32:55 +01:00
Monster Iestyn
3d88ee9d55 Added missing checks in HWR_AddLine from the software version, move v** vars to the top since R_PointToAngle calls use the same values anyway 2018-10-27 19:31:24 +01:00
Monster Iestyn
09eecd36b4 Hack to make sure even (extra)subsectors without planepolys have segs adjusted
this fixes a crash in (old) GFZ2 at the ramp as a result of creating pv1/pv2. This probably means before pv1/pv2 there could have been some silly typecasting from vertex_t to polyvertex_t to get fixed vertex coords and such...
2018-10-27 19:29:45 +01:00
Monster Iestyn
90cfa5ef16 Make new pv1/pv2 seg pointers, so AdjustSeg doesn't modify the v1/v2 pointers directly anymore
Yes I know they're void * in r_defs.h's seg_t definition, it's quicker than trying to figure out if including hardware/hw_glob.h is a good idea or not
2018-10-27 19:29:31 +01:00
Monster Iestyn
1cf2ce63c0 More optimising and otherwise fixing bizarre formatting in hw_trick.c 2018-10-27 18:58:05 +01:00
Monster Iestyn
2107aab666 Moved my added slope checks in hw_trick.c to isCeilingFloating/isFloorFloating
I also optimised those two functions while I was there (why keep a "floating" variable when setting it to false guarantees the functions return false?)
2018-10-27 18:57:28 +01:00
Monster Iestyn
787d5b598d gr_correcttricks fix: don't check if top/bottom textures are missing for sloped sectors, just ignore and cancel the hack
This fixes GFZ2's mysterious flying flats at the ramp to the big room
2018-10-27 18:56:38 +01:00
Monster Iestyn
67a2922558 Ensure file is closed whenever MD2 reading errors happen 2018-10-27 18:53:38 +01:00
Monster Iestyn
b150e842fc Add MD2_INDENT and MD2_VERSION so we can cleanly check that it's a valid MD2 from magic number/version 2018-10-27 18:53:18 +01:00
mazmazz
a288b95458 Merge remote-tracking branch 'public-gitlab/master' into public-music-cleanup 2018-10-19 22:04:26 -04:00
toaster
880e4c0631 Final weather stuff.
* Multiplied rain speed by 3, per Oni's request.
* Disable weather density - force to 1 if weather draw distance, otherwise zero
* Move the ceilingpic check into a more convenient part of the weather spawning loop.
* `drawdist_precip_cons_t` - replaces "Infinite" with "None".
* Disable the lowest normal draw distance (256), given... both kart and srb2 are basically unplayable like that.
* Disable cv_drawdist_nights entirely.
2018-10-14 22:32:34 +01:00
toaster
a1e1aa81b5 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into nextmerge_plus_rain
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
#	src/g_game.c
#	src/p_floor.c
#	src/p_user.c
#	src/r_data.c
#	src/r_data.h
#	src/v_video.c
2018-10-14 21:52:05 +01:00
Monster Iestyn
61a29bed85 Remove unused sscount variable
(it's only set to 0 in software, and only ++'d in OpenGL, what kind of sense does that make?)
2018-10-11 19:59:26 +01:00
TehRealSalt
640e0e09c6 Merge branch 'master' into sal-cleanup 2018-10-08 00:22:44 -04:00
Sal
36696b1fbb Merge branch 'noclip-cam' into 'master'
Noclip cam

See merge request KartKrew/Kart!32
2018-10-07 23:15:06 -04:00
toaster
b1e02467bf Weather is already run client-side. What if we ran it render-side, for major performance gains? This commit will answer all your questions - and more! 2018-10-07 15:00:58 +01:00
TehRealSalt
8ba3f88553 Don't need thissec 2018-10-06 23:37:27 -04:00
TehRealSalt
ff7b402dc5 OGL support 2018-10-06 19:25:59 -04:00
TehRealSalt
e6fd41339a DrawFill supports splitscreen offset flags 2018-10-01 08:41:44 -04:00
Monster Iestyn
872e2f82c1 Redo OpenGL skewing support, so that it now itself supports the lower unpegged effect for FOFs in OpenGL! 2018-09-28 17:02:02 +01:00
toaster
e4f6015b50 Revamp flat alignment to be consistent across all renderer functions except for the software slope renderer, which me and fickle tried our best at but couldn't get to work. (This is a backport of 2.2 code that slightly postdates the improved flat alignment Kart's had for a while.)
This fixes #11.
2018-09-27 18:11:43 +01:00
toaster
f20710fbb4 Turns out I actually forgot to push this when I did the GL fade colour thing earlier, woops. 2018-09-22 21:05:20 +01:00
toaster
4fd4deff8a One last thing - make the OpenGL level loading bar screen have the correct background colour. 2018-09-22 12:43:54 +01:00
toaster
084b99a5c9 Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into encore
# Conflicts:
#	src/info.c
#	src/m_menu.c
#	src/y_inter.c
2018-09-21 20:54:38 +01:00
toaster
25ae5a5e7f Partially address Sal's review last night by switching to a more sensible default. I'm still unconvinced on the need to make encore mode a seperate knob on the grounds of overcomplexity and "you can't turn map hell off", but hopefully this'll be a shippable state we can come back to later.
Also, thank you for reminding me, Sryder - disable my very, very limited progress on encore mode in openGL so that stages aren't an unintended hodgepodge of different colourschemes for the objects versus the level environment.
2018-09-21 12:12:17 +01:00
toaster
123778766a Animated sky backport 2018-09-17 11:21:25 +01:00
TehRealSalt
c9994c6ad8 Changed MD2 coloring again
Squares the colors to get nicer looking results (https://www.youtube.com/watch?v=LKnqECcg6Gw), as well as only blending a small chunk of the skincolor to prevent desaturation from the brightest/darkest values.
2018-09-16 23:39:18 -04:00
TehRealSalt
ac2f81e423 New color brightness formula
Gets more accurate looking results
2018-09-16 23:28:10 -04:00
mazmazz
17cf310b84 nodigimusic nomusic nosound refactor other targets
(cherry picked from commit 86f151db654beb14e8d6893cdff2adaa965e8e4b)
2018-09-14 10:35:56 -04:00
TehRealSalt
f6ce2bfb54 Ignore texture on horizon lines when in OGL
Before: https://cdn.discordapp.com/attachments/300531341957529602/484842910475354124/kart0110.png
After: https://cdn.discordapp.com/attachments/270211093761097728/484841628771680258/kart0109.png

Not a solution, but better than the previous.
2018-08-30 17:53:25 -04:00
toaster
6f4308905f Merge branch 'sonicitems' into encore 2018-08-08 12:04:17 +01:00
toaster
c52a4de933 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into sonicitems
# Conflicts:
#	src/f_finale.c
#	src/hardware/hw_md2.c
2018-08-07 21:20:27 +01:00
toaster
cfaaac78be Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart.git into encore 2018-08-07 17:09:25 +01:00
Latapostrophe
3af7b7bf91 merge sonicitems into chat-changes so that it's not lagging 10 years behind 2018-07-31 19:45:49 +02:00
Latapostrophe
ad187c26f0 Repositionning chat & bugfixes 2018-07-31 15:57:19 +02:00
Latapostrophe
ac7c249fd2 SRB2chat test rework 2018-07-31 11:10:02 +02:00
toaster
bd78c34b99 Encore mode - a fresh take on mirror mode!
* Palette remaps.
* Branding.

TODO:
* Doesn't work in GL. (Mostly.) I have SOME ideas on how to tackle this, but...
* Transmaps are broken in Encore for some reason.
* I tried to make in-level colormaps shimmy over, but it didn't quite work, so I commented it out and only semi-fixed it.
2018-07-23 23:50:41 +01:00
TehRealSalt
77165631c4 HERE COMES A NEW CHALLENGER 2018-07-22 00:31:02 -04:00
toaster
1d88cdf40d Mammoth commit!
* Deaths in record attack no longer put you into a glitchy singleplayer game-over state that we somehow both kept around and also broke since we branched Kart off of Vanilla..
* Fix non-standard mapscales making the Death Egg respawn octagons dissasemble themselves.
* Allow for MULTIPLE TIME EMBLEMS PER MAP, at least in the emblem UI on the timer. It shows all completed emblems plus the uncompleted emblem up to a total of three.
* Major tweaks to the First Person HUD.
	* I know this was your baby, Sal, and some of the changes may prove controversial - so I've put the ones that are likely to cause the most fuss inside an ifndef block, so that you can toggle it as you please with minimal code changes.
	* Dontdraw-ness, transparency, and colorization match the player's object!
	* Moves around on the screen with respect to the direction of the player object's motion, to make drifting look nicer!
	* Flashes the colour of your drift sparks.
* Did a WHOLE bunch of things with respect to music. I'm not sure how to describe this, so I'll go through step-by-step.
	* Countdowns now play the drowning music again.
	* Removed/disabled extraenous P_RestoreMusics.
	* Made map-ending music called by its own function, P_EndingMusic(player_t *player).
	* Made the ending music play on the LAST player crossing the finishing line in splitscreen, rather than first.
* Make dead players spinout and clip through the floor, at least until we add the new death anims.
* Fix prior pogo spring usage making dead players fall faster.
* Make the time over countdown use the kart font when not splitscreen with 3 or 4 players.
* Removed a weird bonus HWR_DrawCroppedPatch function signature in the hardware header.
2018-07-16 20:19:30 +01:00
Monster Iestyn
8e19611033 Merge branch 'opengl-fof-lowerunpegged' into 'master'
OpenGL: FOF walls + Lower unpegged

See merge request STJr/SRB2!258
2018-07-11 16:36:26 -04:00
Monster Iestyn
c127ea3ceb Merge branch 'opengl-projectsprite-fix' into 'master'
OpenGL HWR_ProjectSprite fix

See merge request STJr/SRB2!255
2018-07-11 16:15:42 -04:00
TehRealSalt
ec0c358755 Merge branch 'master' into sonicitems 2018-07-08 17:51:44 -04:00
TehRealSalt
85ab4015eb The remaining errors on a GCC 6.3 setup 2018-07-07 16:38:54 -04:00
Sryder
7b82d0e695 Fix warning relating to max 0 with an unsigned variable
I've looked at the code above and can't see anything that would try to lower the value below 0 as it's mostly just addition and dividing
2018-07-07 00:34:03 +01:00
Monster Iestyn
f1bba60373 Merge branch 'md2-fopen-error' into 'master'
More helpful error messages

See merge request STJr/SRB2!243
2018-07-06 14:38:59 -04:00
Monster Iestyn
130de10f97 Merge branch 'md2-smoother-interpolation' into 'master'
Smoother MD2 interpolation

See merge request STJr/SRB2!224
2018-07-06 14:38:37 -04:00
TehRealSalt
6627483e37 Misc tweaks (mostly color related)
- Smoothed out Ruby & Sepia
- Made Sapphire more distinct from Blue
- Made Navy more distinct from Jet
- MD2 colors weight a few colors even more heavily
- Revised ColorOpposite table
- Fix Wanted not updating on hit
- Very minor item odds adjustment for Battle
2018-07-06 14:22:48 -04:00
GoldenTails
761a221840 Merge remote-tracking branch 'STJrSRB2/master' into patch-1 2018-07-05 16:44:34 -05:00
Steel Titanium
c8d0eb04f4 Merge remote-tracking branch 'upstream/master' into md2-smoother-interpolation 2018-07-05 01:23:56 -04:00
Steel Titanium
c61035571b Merge remote-tracking branch 'upstream/master' into md2-fopen-error 2018-07-05 01:21:09 -04:00
TehRealSalt
01f1229477 Weight certain shades of MD2 blends 2018-07-05 01:13:21 -04:00
TehRealSalt
82734fcf94 Banana drag slowdown, diagonal springs scale to map scale instead of object's scale, OGL skincolors average all colors 2018-07-04 19:06:45 -04:00
toaster
fe8b98ec22 On a hunch, looked it up. Turns out it's a common typo, and that a nickle is actually a type of green woodpecker!! :V 2018-07-02 19:06:05 +01:00
TehRealSalt
3184d2a7b0 Removed Amber & Jade, added Canary & Lime, changed Blueberry & Mint 2018-07-02 13:54:01 -04:00
toaster
e76c328129 Sorry, Sal! In my defense, you don't need to recompile from scratch for any of this, despite what it may look like, as the skincolour name lists are walled off from the rest of the dehacked lists...
More menu/highlight things:
* Rename "Default" to "Game type", to make clearer what it's doing.
* Tweak race colouring slightly.
* Put a highlight around the level select icon, and make it consistent with voting.
* Allow setting the highlight colour to affect the intermissions.
* Fix bug with gametype colour getting for record attack.

A handful of skincolour things:
* Rename Turqouise to Aqua, because it resembles one of my fav 2.2 colours with that name.
* Fix incomplete Steel Blue -> Steel rename.
* Merge the very similar Blueberry and Sapphire...
* ... so Sapphire can be backported!
* And Ruby too.
2018-07-02 13:20:04 +01:00
TehRealSalt
4ffb80806b Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart into sonicitems 2018-07-02 03:36:43 -04:00
TehRealSalt
b3cae5d633 Revamped colors
- The majority of all colors have been tweaked in some capacity to have higher contrast, to either make character highlights or lineart pop out more
- Two new "on trial" colors that may or may not stay: Tangerine, and Dusk. Tangerine is a yellow-orange color to fill the void of yellows. Dusk is a previously removed color that looked freakin' sweet after some cleanup, why wasn't this kept?!
- Turquoise & Frost have been merged. My clean up of Frost ended up looking like a combination of the two.
- Caramel has been removed, Shiny Caramel takes its place.
- Unleashed my inner dream as wanting to have the job of whoever gets to name crayons, and changed all two-word names.
- Todo: reorganize by hue then lum for a nicer invincibility effect, redo and throughly test ColorOpposite table, double check to make sure there aren't any duplicate blendcolors for OGL
2018-07-02 03:30:33 -04:00
toaster
a50a67b273 * Modified, maybe-improved title. May need to be selectively reverted, but...
* To go with this, have the HUD fade in as the title goes away.
* After complaints, only do dogear gametype indicators on the voting screen for levels which don't match the prevailing gametype, and use thin font to intrude on the level pic less.
* Make the voting screen background a different graphic in battle.
* Improve behaviour of DrawDiag in GL.
2018-06-28 19:07:04 +01:00
toaster
dcec24605e * AN OPPORTUNITY FOR GAMETYPE CHANGES ON THE VOTE SCREEN!
* Super important to allow dedicated servers to continue forever without needing to add Terminal.
    * To facilitate understanding, add gametype dog-ears to the vote screen!
    * To do the above, add V_DrawDiag! Works in GL, too!!
* Unrelated shit!
    * Fix a buffer overrun in the randmapbuffer!
    * Disable spectating in splitscreen... Not 100% sure, but in 2p battle, if you spectate, you just lose one balloon and respawn...
    * Improve all the string drawing functions' behaviour - both with being SLIGHTLY clipped by the edge of the screen, and when confronted with drawing off the base 320*200 internal area
2018-06-28 15:47:56 +01:00
SeventhSentinel
fb2a6b53c2 Fixed a bit of redundancy, pointed out by Sryder 2018-06-26 18:04:07 -04:00
SeventhSentinel
88f8b4d852 Extend mobj->colorized to work on... well, mobjs
Previously would only work on players. Now karma items should be easier to spot as intended!
2018-06-26 16:46:47 -04:00
Monster Iestyn
d8a86a8d74 Fix OpenGL completely missing the ability to alter FOF wall pegging by lower unpegged flag. Stupid OpenGL.
Sorry in advance Lat'!
2018-06-26 21:41:05 +01:00
SeventhSentinel
c0aa630c63 Fade-in intro
Also made flashing not-local, again.
2018-06-26 10:14:59 -04:00
Monster Iestyn
aed30519d4 Fix HWR_ProjectSprite to check properly whether the displayed player's mobj or its subsector exists, to avoid a crash when checking for fake planes. (also use viewplayer since its available to use, silly hardware code)
Also tweaked a weird splitscreen check in HWR_DrawSpriteShadow; still investigating whether stplyr is ever not player 2 when it's player 2's view, but this looks better for now
2018-06-23 18:47:32 +01:00
wolfy852
8abeae7805 Chat Manager 2018-06-15 05:20:01 -05:00
TehRealSalt
35eb978c69 MFE_DRAWONLYFORPx stuff ported to OpenGL, and MT_DRIFTDUST respects Boo powers 2018-06-11 02:15:27 -04:00
TehRealSalt
07a18e5185 Merge branch 'master' into sonicitems 2018-06-09 22:50:21 -04:00
Sryder
fffa3db5a8 Merge branch 'public_flatsprite' of git@git.magicalgirl.moe:Sryder/SRB2.git
# Conflicts:
#	src/hardware/hw_main.c
2018-06-09 23:43:25 +01:00
Sryder
ea915e5778 Fix papersprites more for real this time
(Seperate AL and AR sprites were broken, I figured out I was a dunce, oh noey)
2018-06-09 22:58:03 +01:00
Sryder
82b92d1881 Fix the issue from the merge 2018-06-09 22:25:00 +01:00
Sryder
00ac4dd59b Merge branch 'public_flatsprite' of git@git.magicalgirl.moe:STJr/SRB2.git
# Conflicts:
#	src/hardware/hw_main.c
2018-06-09 21:01:59 +01:00
Sryder
0f4e8c1eda Merge branch 'next' into public_flatsprite
I also fix papersprites in regards to flipping on one sprite fits all rotation stuff

# Conflicts:
#	src/hardware/hw_main.c
2018-06-09 18:47:42 +01:00
TehRealSalt
4e2b30fcae Fixes 2018-06-08 00:02:28 -04:00
TehRealSalt
9b3751b30c Merge branch 'master' into sonicitems 2018-06-07 19:39:45 -04:00
TehRealSalt
dd05edfcc0 Merge remote-tracking branch 'srb2public/next' 2018-06-04 16:58:35 -04:00
Monster Iestyn
8e5dbb22f0 Merge branch 'opengl-bigmap-fix' into 'master'
OpenGL: Very large map rendering issue fixed

See merge request STJr/SRB2!249
2018-06-03 15:08:10 -04:00
TehRealSalt
4c0f64ff4f Merge branch 'master' into sonicitems 2018-05-31 19:47:50 -04:00
Sryder
f4181f7eb6 Very large map rendering issue fixed
Move old fix for too large maps having rendering issues from R_CheckBBox to OpenGL's HWR_CheckBBox
From what I know, this effects at least Aerial Garden and Seraphic Skylands
2018-05-26 13:13:37 +01:00
Sryder
badbb4324e Fix FF_FULLBRIGHT not working in sectors with multiple light levels in OpenGL 2018-05-16 21:04:57 +01:00
Steel Titanium
b4d479ad9a Include errno if not already included. 2018-05-13 16:04:34 -04:00
Steel Titanium
7f084868b9 More helpful error message 2018-05-13 15:35:38 -04:00
GoldenTails
7783ddd134
Update hw_md2.c 2018-05-13 14:34:08 -05:00
GoldenTails
5f0a45124c
Update hw_md2.c 2018-05-13 14:32:33 -05:00
GoldenTails
e66e0bb20e
Fixed MD2 models not loading correctly on Linux 2018-05-13 14:19:36 -05:00
TehRealSalt
36b52e1c67 Merge remote-tracking branch 'refs/remotes/srb2public/next'
# Conflicts:
#	src/f_finale.c
#	src/hardware/hw_draw.c
#	src/hardware/hw_main.c
#	src/m_misc.c
2018-04-07 18:43:59 -04:00
Sryder
6f2de824fb Uncomment HWR_CorrectSWTricks but set gr_correcttricks to be off by default
I wasn't aware of the cvar, this should do for now since I don't believe any maps use these software tricks, probably an old leftover from DOOM.
2018-03-30 23:12:44 +01:00
Sryder
0aaae501d3 Warnings must die 2018-03-30 18:53:23 +01:00
Sryder
f3aa02e26d Start with lightnum on sector lightlevel 2018-03-30 18:13:52 +01:00
Sryder
65c893da86 static tempsec for R_FakeFlat
I don't fully understand this, but it's what software does and it fixes the issue of the lighting in DSZ3. Also don't need the extra call to R_Prep3DFloors.
2018-03-29 23:28:54 +01:00
Sryder
fab4b7f5ea Stop squashing the screen vertically in non-green resolutions 2018-03-22 01:10:53 +00:00
Sryder
839ee0ab85 OpenGL Sprite Splitting 2018-03-22 00:52:14 +00:00
Sryder
0885d27171 Transform sprites in world space rather than screen space
Transformation based on screen space would make sense if we didn't want anything in the world to effect the sprites.
This should allow sprite splitting and sorting of sprites with level geometry easier.
stransform is no longer needed.
2018-03-21 19:45:37 +00:00
Sryder
4e95066f5a Some fixes and updates for HWR_SplitWall
Solid walls *can* be cut
Fix issues with water and fog FOFs not cutting each other out correctly
Fix Fog colourmap and lighting setting that is done here.
Remove HWR_SplitFog

There is currently a bug with FF_DOUBLESHADOW (that also exists in software) but has a larger impact here. When 2 FF_DOUBLESHADOW lights are directly stacked on each other the bottom one has its height set incorrectly. This causes all the Fog in the timed gravity flipping section of ERZ2 to be drawn and it looks really bad.
2018-03-20 14:20:08 +00:00
Sryder
f3d63b82ce Revert "Fix screenshot functionality in fullscreen in SDL2"
This reverts commit 121fcd8369.

The reason I am reverting this is because the last commit actually fixes the *old* screenshot functionality, as the screen is being drawn back onto the buffer after they're swapped in the "real" size. Meaning the old function actually works perfectly fine now.
2018-03-18 18:33:53 +00:00
Sryder
a984d979d1 Fix wipes in low resolutions 2018-03-18 17:12:12 +00:00
Sryder
31d1ef8db0 Draw the final screen texture in the centre with black bars
Only applies when the monitor aspect ratio is different to the game's aspect ratio.
2018-03-17 19:22:14 +00:00
Sryder
a9214ebd37 Match HWR_DrawCroppedPatch to V_DrawCroppedPatch 2018-03-17 13:58:44 +00:00
Sryder
801f7547d3 Add the full-screen drawfill functionality to HWR_DrawFixedPatch 2018-03-17 13:26:43 +00:00
Sryder
7830c031f7 Make HWR_DrawFill match V_DrawFill 2018-03-16 19:46:45 +00:00
Sryder
7764a1bb5d Match HWR_DrawFixedPatch to V_DrawFixedPatch 2018-03-16 18:08:24 +00:00
Sryder
1b3e1f78af Translucent floors shouldn't write into the depth buffer 2018-03-15 23:59:01 +00:00
Sryder
5a4ea9fab3 Better fog block colouring
They still aren't perfect, but now they are at least not quite so obviously just translucent polygons over the level. A mixture between partially modulating the background colours and adding the fog colour. Notably white fog blocks look like they're brightening what's behind them.
Additive was also setting noalphatest before, can probably decide that depending on what it needs anyway. I don't think it's currently used anyway.
2018-03-15 23:58:37 +00:00
Sryder
e4ed3a793b Small hacky fix for MD2s and sprites until sorting for walls, floors, and sprites is done
Sorts all translucent sprites and MD2s so they're drawn after all the opaque ones. Fixes most of the observable issues between translucent MD2s and opaque sprites/MD2s.
2018-03-09 09:58:10 +00:00
Sryder
121fcd8369 Fix screenshot functionality in fullscreen in SDL2 2018-03-08 22:28:38 +00:00
Sryder
77af3a8f95 Optimise the screen texture setup for SDL2, Post-processor, and wipes.
Only use glCopyTexImage2D when first creating the screen texture, use glCopyTexSubImage2D anytime after that as it does not define a new texture each time.
Flushing of the screen textures has been implemented for when the screen size changes (so that the screen textures don't stay at a wrong size) and the game is closed, I believe they would leave a memory leak before.
2018-03-07 22:55:21 +00:00
Sryder
67ee1637c9 Decrease far clipping plane
The Far clipping plane did not need to be nearly as high as it was, the new value is 32768, which I suspect is about how far software can render before it completely falls apart.
It is desirable to increase the near clipping plane to between 6-10, but it can introduce more issues with close geometry not being drawn when the player or camera is scaled or viewheight is set to MIN in first person view. It would also stop sprites from being drawn ever so slightly too early, but this isn't too much of an issue and isn't too noticeable with those values. Might look into scaling near clipping plane in accordance to camera scale in the future.
The reason for wanting to increase the near clipping plane is because the small value can cause very noticeable Z-fighting where there shouldn't be on older GPU's, usually Intel ones, that don't support 24-bits for the depth buffer.
2018-03-07 00:39:33 +00:00
Sryder
538d0de949 Merge branch 'master' of git@git.magicalgirl.moe:STJr/SRB2.git into openglquickfixes 2018-03-06 16:11:05 +00:00
Steel Titanium
0cc4b8d6db Smoother MD2 interpolation 2018-02-06 14:50:08 -05:00
TehRealSalt
3749914588 Fix more conflicts that I forgot 2018-02-05 19:40:26 -05:00
TehRealSalt
d9c49d9527 Merge remote-tracking branch 'refs/remotes/origin/master' into sonicitems
# Conflicts:
#	src/dehacked.c
#	src/hardware/hw_main.c
#	src/info.c
#	src/info.h
#	src/k_kart.c
#	src/p_enemy.c
#	src/p_user.c
#	src/r_things.c
2018-02-05 19:08:49 -05:00
TehRealSalt
cbff4bbf44 So much
- Renamed fucking everything
- Threw out all of the item code because it looks at me funny
2018-02-05 18:55:52 -05:00
Sryder13
b4db82336b Star colour support for MD2s 2018-02-05 02:11:17 +00:00
Sryder13
4b06594dd0 Star colormap is decided to be used per mobj with mobj->colorize
Star creates afterimages that are colorized and fullbright
Star makes the player fullbright
2018-02-05 00:00:36 +00:00
TehRealSalt
42ddd32406 Merge remote-tracking branch 'refs/remotes/srb2public/master' 2018-01-02 22:59:43 -05:00
TehRealSalt
4a23c4704d Rendering fixes ahoy!
- Fix squished sky in Software 3P/4P
- Fix reversed sky in OpenGL Mirror Mode
- Fix MD2 culling in Mirror Mode
2017-12-29 14:50:16 -05:00
Alam Ed Arias
f647989433 MSVC: set SubSystem on DLLs to Windows 2017-12-27 19:32:38 -05:00
TehRealSalt
c38423eeb0 Merge remote-tracking branch 'srb2public/next' into quads
Update
2017-12-22 20:55:59 -05:00
TehRealSalt
94a42d1bf6 Unfinished V_HORZSCREEN revamp 2017-12-22 10:16:41 -05:00
TehRealSalt
349b27e0de Change splitscreen into UINT8, fix HUD slightly more 2017-12-18 20:59:04 -05:00
TehRealSalt
122eb82170 Merge remote-tracking branch 'refs/remotes/origin/battle' into quads
# Conflicts:
#	src/g_game.c
#	src/k_kart.c
2017-12-18 01:02:53 -05:00
TehRealSalt
d2425329ca HUD 2017-12-17 20:42:17 -05:00
TehRealSalt
654e5e482b Mess with camera distance stuff
Also fixed a bug where I made all of the screens in 3p/4p mode in OpenGL
too zoomed in
2017-12-17 17:01:19 -05:00
TehRealSalt
1f958091df OpenGL rendering 2017-12-17 16:33:21 -05:00
TehRealSalt
b6d86145a9 OGL Mirror Mode
Haven't tested a whole lot but it seems okay?
2017-12-12 17:31:25 -05:00
Wolfy
fb976ab26c more quad stuff 2017-12-11 00:12:38 -06:00
Sryder13
c9ddb7a4b5 Re-add lost player vibration frames
Separate sprites for fast moving frames
Rename some frames for a more sensible naming convention
2017-11-04 17:32:47 +00:00
Sryder13
81a077b9af New player frameangle used instead of mobj angle for players
Set to mobj angle except when spinning where it's set to spin
Only 1 spin frame needed now
2017-11-04 14:07:53 +00:00
Monster Iestyn
2b1fb67a5f DrawMD2i: change duration and tics to INT32, fix up any related code 2017-10-30 19:12:51 +00:00
Sryder13
bd55a295bd Skin colours for MD2s
This isn't amazing, until I implement something better (probably not until 2.2) it will have to do
2017-10-26 20:57:36 +01:00
Sryder13
8742b3b2d9 Star power translation tables
Redid the part that handled the regular kart translation tables too, now uses the new table created instead of the horror of what was there before
2017-10-26 20:04:05 +01:00
Monster Iestyn
0cc8fbdb4e Don't use interpolation code if the frame lasts instantaneously or infinitely
Also removed the + 1 from newtime, since there was never really any need for it. It just offset the interpolation so it went like (1 -> 2] instead of [1 -> 2), so you never saw the base appearance for each frame except at the end of any frames interpolating to it

Changed DrawMD2Ex's duration/tics type to INT32 so -1 comparisons work, probably want to change the signs elsewhere too but this is fine for now
2017-10-24 20:45:55 +01:00
TehRealSalt
5fe2f4928f Merge remote-tracking branch 'refs/remotes/srb2public/next' into zarrotsu
# Conflicts:
#	src/doomdef.h
#	src/sdl/i_main.c
#	src/sdl/i_video.c
#	src/y_inter.c
2017-10-17 15:53:34 -04:00
TehRealSalt
727d55b64e Merge remote-tracking branch 'refs/remotes/srb2public/public_flatsprite' into zarrotsu
# Conflicts:
#	src/doomdef.h
2017-10-17 00:40:38 -04:00
Wolfy
faf886885e Have Kart use kmd2.dat instead of md2.dat 2017-10-11 20:26:34 -05:00
Alam Ed Arias
6fbdf37b18 Build: support building with clang 5.0 2017-09-30 08:54:17 -04:00
Sryder13
f3a605de6b I need to stop leaving things commented out that are going 2017-09-15 18:03:06 +01:00
Sryder13
db99537a6b Various Transparent Texture Fixes
Draw Textures and Flats that have holes in them like a solid polygon so they use the depth buffer and don't need to be sorted
Disable all linear filtering on textures and flats that have holes in them, the linear filtering introduces translucency into the textures where the edges are. Leaving them with either a black border, or causing pixels behind the slightly translucent areas to not be drawn. Doesn't apply to sprites and the HUD as they are always already sorted properly.
Make the Alpha Testing more strict on non-translucent blend modes. This makes it so any transparency below 0.5 is discarded instead. Would make anything that is blended and has holes in it look slightly better, only the HUD and MD2s where the texture has holes are effected currently.
Set TF_TRANSPARENT on flat texture flags when there are holes in the texture.
Minor fix to make sure MD2s always set the right blend mode
2017-09-09 00:44:13 +01:00
Sryder13
6877930ed9 Go through and draw MD2s and sprites at the same time so they are sorted from each other (mostly) correctly 2017-09-08 00:57:21 +01:00
Monster Iestyn
8290ae9fd4 Fix paper sprites apparently "turning" around sometimes when you turn the camera, when they're supposed to be still (sawb.wad for instance)
I cleaned up some of Sryder's changes a little too I guess
2017-07-02 16:38:25 +01:00