Commit Graph

36602 Commits

Author SHA1 Message Date
sukibaby 9a288e1b73 Change license to GPL v3 2024-09-20 15:45:53 -07:00
sukibaby 17a5823f45 Cease distributing Windows SDK files
1) Remove Win SDK headers directory (src/archutils/Win32/ddk)

2) Update files including Win SDK headers to instead use the version installed by Visual Studio Installer

3) Update INSTALL.md

Note: this commit does not enforce using a specific version of the Windows SDK, but does everything needed to use the locally installed Windows SDK instead of files distributed with the source code to enforce using a particular version.
2024-09-20 15:45:53 -07:00
sukibaby 9737482f7c Fix an issue breaking compilation in GCC12 and up
Users attempting to build the beta branch with GCC 12, 13 or 14 have a failure here due to the std::uint_8 data type.

The reason I changed it to an unsigned instead of including <cstdint> is because behavior on versions of GCC 12 and up were not consistent. I changed it to an unsigned because all versions of GCC were happy with that.
2024-09-17 07:57:28 -07:00
sukibaby 0351ba6693 Use SetWindowPos to prevent interruptions on fullscreen 2024-09-17 00:00:34 -07:00
sukibaby 322ec7b231 Removing bApproximate (part 1)
bApproximate is left over from long ago when the method to retrieve the system time might be 32-bit only or need correction. This is no longer needed, and already commented out of several sections of the sm5.1 base code. It can't be removed all at once just by deleting every instance of bApproximate, because it often refers to pointers that go elsewhere. so, this is the first part of a multi-stage removal process.

Other changes: remove samplerate() macro from RageSound, change some implicit casts to explicit.
2024-09-12 23:05:58 -07:00
sukibaby a8fa4bab87 Delete _assets/NoteSkins/common/_Editor directory
82MB of psd files we don't really need to distribute, also the contents of the readme here are really weird.
2024-09-08 21:46:50 -07:00
din 44b2493046 off by one 2024-09-07 21:25:52 -07:00
din d3138b883f gamepad event rollover fix 2024-09-07 21:25:52 -07:00
sukibaby 803dc1309a Optimize avoiding CheckGameLoopTimerSkips
Implements a static boolean to track the CheckGameLoopTimerSkips preference, so that it isn't calling PREFSMAN via CheckGameLoopTimerSkips in a tight loop. Since this setting is rarely used, and isn't expected to be changed while the game is open, it doesn't need to be continuously checked.
2024-09-06 11:31:46 -07:00
sukibaby b698eb5f0c Simplify the input device check
Reduce the input device check from every 500 frames to every 255 frames by way of replacing the modulo 500 with a wrapping uint8_t. A bit faster reaction during device plug-in is nice, and using a simple pre-increment instead of doing a modulo is a little more efficient.
2024-09-06 11:31:46 -07:00
sukibaby 6b2a439aa5 Clean up Windows filesystem mount code 2024-09-05 12:09:58 -07:00
sukibaby 45a7c967dd Add sdk license to w32 ddk directory 2024-09-05 08:51:36 -07:00
sukibaby 241317ff29 Revert to 5.0.12's ClampHardwareFrame
Also adds `cinttypes` to support PRId64 / PRIu64 format specifiers, and switches to system-clock based time measurement in GetHardwareFrame
2024-09-04 20:17:20 -07:00
sukibaby 2eeee03211 Remove timer from text_glow math
text_glow is part of DrawPrimitives(), and is used just about everywhere, so it is a huge burden taken off the timer to instead increment a counter.
2024-09-04 20:15:35 -07:00
sukibaby a0dbb32c2f Declare a NoteData template as noexcept 2024-09-04 11:07:45 -07:00
sukibaby b58f4f3d1d Clear out Translations.xml
This commit removes old translations from Translations.xml which are probably unneeded and unwanted, but also improves commentary so people will be better equipped to write their own translations.

Thanks @bkirz  for pointing this out 👍
2024-09-03 21:19:57 -07:00
sukibaby 93a9db10b7 ci.yml: Don't cache windows build
Attempt to fix the failing CI for the short term.

The existing workflow file still works on my personal fork, but for some reason doesn't on the main project.
2024-09-03 21:02:52 -07:00
sukibaby 21088502b9 Remove clamp macro
Doesn't really need to exist since  all it's doing is inlining std::clamp.
2024-09-03 20:50:48 -07:00
sukibaby 51dbbeac1c Reapply "Windows: Compile with /utf-8 flag"
This reverts commit 48c1fe3856.
2024-08-30 03:17:33 -07:00
sukibaby 4a3ed49f3f Update ci.yml with "vswhere"
Prevents an issue where the runner may not be able to find the compiler.
2024-08-30 03:16:53 -07:00
sukibaby c2cd37fdd2 WaveOut 16x512 buffer instead of 8x1024
Both come out to the same amount of target latency (as does 32x256, etc) however RageSoundDriver.h defines samples_per_block as 512, so this aims to have chunksize_frames equal 512.

It also defines a constant to define the quantity of buffers so it's not hardcoded in various places and puts the variables in an anonymous namespace.
2024-08-26 17:59:59 -07:00
Arthur Eubanks 49393443da Remote delta-note-pro
In #441, people seem to be leaning toward removing the extra noteskin.

If people complain we can reinstate it.
2024-08-26 17:31:08 -07:00
Yauhen Artsiukhou 705cd55a04 Add native restart menu button
It should replace Simply Love restart hack.
Now it is possible to assign any button to restart.
2024-08-26 10:52:19 -07:00
sukibaby 7cf2501214 Update LightsDriver_SextetStream.cpp
Changes to SextetStream were necessary, as the define and class name caused name colissions.
2024-08-26 08:52:41 -07:00
sukibaby 8872a6a5e3 Update InputHandler_DirectInput.cpp 2024-08-26 08:48:03 -07:00
Arthur Eubanks 238c034542 Swap red/blue notes in pump rhythm noteskin
PIU Pro uses blue notes for quarter notes and red notes for eighth
notes, but AFAIK nobody likes this color arrangement. Match all the
other 4 panel noteskins.

Keep around the old one as delta-note-pro.
2024-08-26 08:34:38 -07:00
sukibaby 77bf60f6e1 Move some StdString.h functions to .cpp
Update StdString.h
Update CMakeData-globals.cmake

This is just meant to hold us over until std::string is implemented and tested to be release-stable.
2024-08-26 08:32:53 -07:00
Scott Brenner e80380cc12 Cache CMake build directory 2024-08-25 12:53:50 -07:00
Brandon W a3f3587c19 Fix style in MovieTexture_FFMpeg to match Google C++ style guide. 2024-08-25 12:52:34 -07:00
Brandon W 88511c59cb Use avcodec builtins for constructing and destroying AVFrame and
AVPacket, and switch FrameHolder to unique_ptr.
2024-08-20 21:09:25 -07:00
sukibaby 5c847dbe45 Fix ArchHooks_Win32Static.cpp
1)   move file scope variables into an anonymous namespace

2)   properly bracket functions

3)   fix GetMicrosecondsSinceStart calculation
2024-08-20 21:00:00 -07:00
sukibaby c1c78270c8 Update RageSoundReader.cpp
The warning inside the loop makes the log too messy and is too much of a performance hit on very low end hardware.

I'm changing it to remove the mid-loop logging and only return a logged warning on a failure.
2024-08-20 17:37:19 -07:00
Valentina16 52cf6170e4 Sprite DecodeMovie when required 2024-08-19 09:24:36 -07:00
sukibaby d452ed9f21 Static cast m_FrameBuffer.size to int 2024-08-19 09:19:44 -07:00
sukibaby 6b67a0c476 Fix two mutexes 2024-08-19 09:19:44 -07:00
Rafał Florczak a0e4f6a4b0 Parallel github workflow builds 2024-08-12 13:31:18 -07:00
Michael Votaw 7b1b287760 Replace forward declaration with include NoteData.h 2024-08-11 09:43:54 -07:00
Michael Votaw f96ee75ccc Return the noteType for columnCues instead of isMine. 2024-08-11 09:43:54 -07:00
Michael Votaw 5db1a56d48 Add ColumnCues calculations, exposed to themes via Lua function on Steps object 2024-08-11 09:43:54 -07:00
Brandon W d74ad50707 Remove singlethreaded, old ffmpeg decoding code. 2024-08-10 15:44:06 -07:00
sukibaby 10125caa7f Remove GLU dependency
gluGetString, gluBuild2DMipmaps, and gluErrorString are all functions from the GLU library, which is not part of OpenGL.

This lets the game run without libGLU1 (or whatever it's called on a given distro).

Update README.md
2024-08-10 11:53:09 -07:00
Brandon W eb8f76023e Allow frames that didn't decode to skip. 2024-08-10 11:48:20 -07:00
sukibaby b938ac449f Migrate to universal build for macOS
Instruct cmake to generate a universal release, instead of separate executables for ARM64 and x86_64.
2024-08-09 04:25:26 -07:00
sukibaby 36892b4e56 Create RandomSeed.h (mt19937 RNG)
This exists to replace the use of RageTimer as a RNG seed, which results in fewer GetTimeSinceStart() calls and better entropy.
2024-08-07 10:05:13 -07:00
Brandon W d4ab7b12ed Consume background thread movie decoding. 2024-08-07 10:04:18 -07:00
sukibaby 7492793463 Initialize SongPosition variables 2024-08-07 02:00:40 -07:00
sukibaby 6a2de50101 Remove RadianToDegree macro from ModelTypes
We can remove two macros from RageMath which are only used in a single place.
2024-08-07 00:58:18 -07:00
sukibaby 5e00535522 Prevent divide by 0 in calc_mean 2024-08-07 00:56:16 -07:00
sukibaby 3c64940974 Update WinMoveFileInternal 2024-08-07 00:52:34 -07:00
sukibaby a1c316cfc7 Initialize variables in ModelTypes 2024-08-07 00:52:04 -07:00