This enables breakpad Windows support **only**.
The scope of this was limited to allow for inclusion into 0.0.4 release.
Breakpad for now is a Windows-only functionality, as this platform has
largest audience and is the only one that has no system-provided stack
tracing utility.
Upon crash, breakpad will try to create a dump and save current game,
present user with some vital information, then open explorer on the
created files for user convenience, asking him/her to create a new
issue with OpenRCT2 on Github.
While linear/anisotropic filtering introduces in previous commit looks
good at non-integer scales, using it at integer scales may make screen
look unnecessarily blurry. This commit introduces an option to use NN
scaling at integer values of scale.
This change allows to pass render quality hint to SDL in runtime. While
using hardware display, SDL can hint the renderer to use linear or
anisotropic filtering, which can deliver a better experience when using
non-integer scale value.
Compiler only guarantees proper accesses to variables when using
variable's native type or `char` (i.e. single byte type) [1].
This commit fixes violations of this rule. In most cases changing code
to a simple cast was enough, some required a bit deeper modifications.
This fixes#2596.
[1] http://blog.qt.io/blog/2011/06/10/type-punning-and-strict-aliasing/
Natively on Linux, using OpenRCT2 with touch is impossible because
touch events are not handled by the game. They just don't do anything.
This commit handles touch events. A single touch represents a
press of the left mouse button. If it followed by another touch
within 300ms, a right mouse button event is emitted. This timeout
is like that of mobile web browsers [1].
[1] https://developers.google.com/web/updates/2013/12/300ms-tap-delay-gone-away?hl=en
• Make comment heads be /**
• Make rct2 addresses be double spaced indented
• Make there be a space afte rct2: and the address
• Make single-line rct2 addresses be full block comments
• Move description of method to top of comment
This allows for NN-scaling of display, a much needed feature on highdpi
screens.
Scale can be set to positive integer value which will become a zoom
factor for whole rendered output.
Issue was caused by the image using an invalid colour entry. This initilises the memory that is expected to return white. Platform update palette also had to be modified to allow this fix to work.
safe_strncpy is similar to strncpy, but makes sure buffer is
null-terminated. Update most of project to use this updated function to
prevent illegal memory accesses.
The Steam overlay is detected by checking if the center pixel of
the framebuffer is changed between rendering and presenting to the
screen. This happens when the Steam overlay draws the gray fade on
the screen.
This does not affect other overlays like FRAPS, MSI Afterburner and
OBS overlays that don't obstruct the center of the screen.