Commit graph

2072 commits

Author SHA1 Message Date
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
527df5c248 Fix OpenGL Title Screen Sky
My IDE doesn't seem to like Vada's name.
2018-03-17 15:11:32 +00:00
Sryder
6de0cc6bcc Remove the OpenGL only code from V_DrawPatchFill
That's all of the HUD drawing functions that are currently used updated in GL.
2018-03-17 14:47:06 +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
Alam Ed Arias
1619b392f6 Merge remote-tracking branch 'public/master' 2018-03-14 14:26:07 -04:00
colette
18b4ab9770 Merge branch 'credits_update' into 'master'
Credits update

See merge request STJr/SRB2!231
2018-03-14 12:56:27 -04:00
toasterbabe
fee8714109 i suck at the alphabet! 2018-03-14 16:55:33 +00:00
toasterbabe
a5ab9f01bb oh yeah this guy's name needs changing too 2018-03-14 16:49:10 +00:00
toasterbabe
68cb919205 down with cis 2018-03-14 16:47:19 +00:00
LJSonik
0ff5b851cd
Merge branch 'master' into minor-net-command-fixes 2018-03-09 17:15:37 +01:00
MonsterIestyn
af46a076f2
Merge pull request #239 from LJSonik/net-archive-fix
Fix Lua panic when archiving a table element with an userdata key
2018-03-09 16:13:12 +00:00
Louis-Antoine
aefe06e2ef Fix Lua panic when archiving a table element with an userdata key 2018-03-09 16:40:34 +01: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
Monster Iestyn
87b1246b58 Merge branch 'download-filename-trunc-fix' into 'master'
Download filename trunc fix

See merge request STJr/SRB2!230
2018-03-08 14:33:57 -05: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
Monster Iestyn
aba4adfabc shrunk buffer from 32 to 28 so that all of "Downloading "extremely...longname.wad"" can fit on screen at once. 2018-03-06 20:52:55 +00:00
Monster Iestyn
a66824d63f replace the 3 strncpys with a snprintf 2018-03-06 20:20:27 +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
Monster Iestyn
e3151f26dc rewrite download file screen code:
* fix screen to properly truncate the filename to just the real name only
* if the real name itself is too long, use ellipsis and paste in parts of the start and end of the actual name

note: I haven't actually tested if this works or compiles yet, I haven't the time right now
2018-03-05 22:24:03 +00:00
Monster Iestyn
1fe79a0d71 Fix movies not recording the "extension" to special stage intro fades 2018-03-05 19:08:53 +00:00
Monster Iestyn
16e60aada9 Merge branch 'linux-limbo' into 'master'
Linux limbo

See merge request STJr/SRB2!228
2018-03-04 14:08:21 -05:00
Monster Iestyn
9843d60e13 Merge branch 'console-key-breakfast' into 'master'
Console key breakfast

See merge request STJr/SRB2!226
2018-03-04 14:06:40 -05:00
Monster Iestyn
4a0305eec8 more I_GetFreeMem fixes: don't attempt to set *total to 0L if total itself is NULL 2018-02-23 20:40:19 +00:00
Monster Iestyn
1216c9da18 Use __linux__ instead of LINUX/LINUX64
Turns out compiling for Linux 32-bit using the Makefiles never actually defines LINUX! Apart from that, most of the existing Linux-specific code in SRB2's source code (except for tmap.s) actually uses __linux__ instead anyway
2018-02-23 20:21:16 +00:00
Monster Iestyn
6e21059713 Eat unprintable keys too, since there's no reason to feed them to G_Responder anyway when the console is open 2018-02-23 20:08:02 +00:00
Monster Iestyn
fb3e78c020 Make CON_Responder eat Ctrl+key combos that have no effect, instead of passing the key on to G_Responder 2018-02-20 17:06:03 +00:00
Steel Titanium
36d1259ceb Removed some redundant checks 2018-02-17 00:37:17 -05:00
Steel Titanium
d921f26e54 Don't init the sound system on dedicated servers 2018-02-17 00:01:42 -05:00
LJSonik
d1e3275c78
Merge branch 'master' into minor-net-command-fixes 2018-02-14 21:07:10 +01:00
Louis-Antoine
bd2334dd93 Fix SV_StopServer not calling D_Clearticcmd correctly 2018-02-14 21:00:55 +01:00
Alam Arias
4cbe2e1622
Merge pull request #231 from LJSonik/net-command-leak-fix
Fix net commands not always being freed
2018-02-14 10:28:32 -05:00
Louis-Antoine
c7320f9f82 Don't allocate memory for net commands already executed, as it would cause them to be never freed 2018-02-14 15:09:52 +01:00
Louis-Antoine
490f5beb89 Do not prevent all net commands for the current tic from being executed because of an unkown net command ID 2018-02-13 17:53:18 +01:00
Monster Iestyn
fe2fd432e8 Merge branch 'stopleakingnames' into 'master'
Stop leaking names via metadata.

See merge request STJr/SRB2!223
2018-02-08 16:14:15 -05:00
Steel Titanium
0cc4b8d6db Smoother MD2 interpolation 2018-02-06 14:50:08 -05:00
toasterbabe
5adfdf9516 cv_playername already has a valid default value of "Sonic". We do NOT need to expose things like this. 2018-01-30 22:48:53 +00:00
toasterbabe
8090ea4ed0 Stop leaking names. 2018-01-30 21:25:28 +00:00