Allows the user to configure the mixing buffer size to reduce
latency at the cost of higher CPU usage, or vice versa.
This also raises the default buffer size from 1024 to 2048, to
address some underrun problems people have with the current buffer
size.
A number of people have said they have sensory issues caused by the
ripple effects from water and heat. This turns off those effects
when reducevfx is on.
It may be a better idea for this to be a separate option, but it's
a starting point we can build upon later.
Calls to F_ContinueCredits and D_StartTitle, even if deferred,
change the current gamestate. However, the tic loop in TryRunTics
may still have a couple tics to execute to catch up to current
time, and as a consequence G_Ticker may execute game logic while
the current state is not GS_LEVEL or equivalent. As a result, it is
highly likely for the game to crash.
This adds deferred credits start to the tic loop, and exits that
loop if either title or credits are supposed to start after the
current iteration, fixing this crash scenario.
FixesKartKrew/Kart#1185
All items in the game are put into the FREE PLAY item reel, instead of the fake "time attack" behavior. Everyone's already just turning off items to get a particular one, so turn it into a feature.
Tutorials are specifically set to be unaffected.
These particular patches need to be cached in
K_LoadKartHUDGraphics, but caching them anywhere else with a
different tag causes them to potentially be freed and then later
use-after-freed during a Sealed Star run, causing a crash. Instead,
let's cache them as PU_HUDGFX in all cases where they are used.
FixesKartKrew/Kart#1240
OpenGL does not have renderbuffers until OpenGL 3.0 (contrast to
GLES which has them starting with 2.0). In order to allow people
with older GPUs to play the game for now (until ANGLE+GLES), I am
removing the use of renderbuffers in the game code. They aren't
needed because nothing actually needs a depth or stencil test yet.
Once HWR2 gets rolling, I'll add these back.
FixesKartKrew/RingRacers#1
Some incorrect arithmetic (applying padding to each pixel instead
of each _row_ of pixels) caused the pixel data to be interpreted
incorrectly. This was both in the GL2 RHI driver for read_pixels
and in the ScreenCapture module.
FixesKartKrew/RingRacers#41