cmss13-devs / cmss13

Contains the code for CM-SS13
https://cm-ss13.com
GNU Affero General Public License v3.0
82 stars 463 forks source link

Gives Screenshake an actual smoothing value versus just jumping over a single frame #6524

Closed GrrrKitten closed 1 day ago

GrrrKitten commented 2 weeks ago

About the pull request

image image

Basically in game rn, screenshake uses jump easing, which over the span of a single frame sends you from your current screen position to the location of the screenshake. This PR gives it cubic easing, which while being one of the more 'rough' easing options, makes it look like your FPS arent dropping.

Explain why it's good for the game

Screenshake looked extremely low FPS/jumpy and honestly over long periods of screenshake like queen screech kinda made your eyes hurt. CM's screenshake was one of the worst of any SS13 servers and had us looking extremely dated.

Screenshake should be Screenshake,not give players motion sickness

This PR fixes that, now with screenshake being heavily dependent on your personal FPS choice, with those who choose to play on the server FPS/lower FPS having whats more similarly to the older 'jumpy' screenshake, while those on higher FPS have to deal with random low FPS screenshake

The vids speak for themselves

Testing Photographs and Procedure

Screenshots & Videos I have vids of what it looks like too for gun recoil but photoshop refuses to render my videos so theyll come later What it used to look like: https://streamable.com/c4wk97 One of the worst examples of old screenshake (at 48fps) https://streamable.com/iyj8d7 What it looks like now (note I use 48 FPS for first one, then server FPS for low fps ones) https://streamable.com/5nd11l

Like the stuff I make? ko-fi

Changelog

:cl:

qol: Makes screenshake look less low FPS/jumpy /:cl:

github-actions[bot] commented 5 days ago

This PR has been inactive for long enough to be automatically marked as stale. This means it is at risk of being auto closed in ~ 7 days, please address any outstanding review items and ensure your PR is finished, if these are all true and you are auto-staled anyway, you need to actively ask maintainers if your PR will be merged. Once you have done any of the previous actions then you should request a maintainer remove the stale label on your PR, to reset the stale timer. If you feel no maintainer will respond in that time, you may wish to close this PR youself, while you seek maintainer comment, as you will then be able to reopen the PR yourself

KoishiVibe commented 5 days ago

Do you mind if I snag this for PVE13?