* Fix#14449: Surface smoothing not working at extra zooms
Caused by two issues. One was spotted by @AaronVanGeffen in that surface smoothing was turned off. The other was caused by a bug in the opengl renderer that went unnoticed due to never being hit during normal play.
* Fix merrygoround and enterprise extra zoom peep drawing
* Add changelog entry
The get_track_paint_function functions have all been taking an extra 'direction' parameter, but nothing is actually using it. To simplify things, remove the parameter.
* Start removing GET_VEHICLE macro use
* Further work
* Remove further GET_VEHICLE's
* Further removal of GET_VEHICLE
* Remove the last of GET_VEHICLE
* Fix testpaint
* Fix nullptr deref
* Make review changes
Also swapped in helper functions and used a standard patern for iterating the train cars
* Further simplify loops for train cars
Previously when the arguments of a function wouldn't fit on a single line, clang-format would put each argument on its own line instead. By enabling the binpack parameter setting, it tried to fit as many on one line as possible instead.
Co-authored-by: Hielke Morsink <hielke.morsink@gmail.com>
Clang-format sees the text behind `#pragma region` as code and formats it. Instead of stating the copyright and date there, it's now in the comment block right below it. The text "Copyright" is left in the `#pragma region` line, as clang-format sees it as a single identifier.
I took the opportunity to normalize the dates, and add the copyright notice to the source files where it was missing them (except for third-party and the generated resources.h file).
This aims to make future refactoring easier. The arguments are removed where possible, but kept and marked with C++17's [[maybe_unused]] where they could not be removed (e.g. when they are used as a callback, rather than called directly).
I've skipped the rides/<category>/* and peep/* source files, because the rides source files are mostly generated and have a ton of unused variables, and the peep source files are being refactored.
I've also skipped most of window/* source files, because most of the functions are used as callbacks and will be bulk-renamed at some point.