37 Commits
Author SHA1 Message Date
McSchneidar cf2fa796e2 .NET10 Migration (#946)
Runtime and build
- Move all projects to .NET 10 with SDK-style project files and a shared
  Directory.Build.props (WIN/LINUX, x86/x64 defines)
- Load managed and unmanaged dependencies from libs/managed and
  libs/unmanaged through assembly and native library resolvers
- Compile party modes with Roslyn instead of CodeDom
- Update AppVeyor to the .NET 10 SDK and dotnet test
- Download the FFmpeg and gstreamer runtimes from the dependencies
  repository during the build
- Remove the VC++ 2015-2022 runtime check, no dependency needs it anymore

Graphics and windowing
- Replace the Direct3D 9 renderer with Direct3D 11 (Vortice)
- Pace Direct3D 11 frames with a frame latency waitable swap chain
- Move window, input and message boxes to SDL3
- Replace System.Drawing with SkiaSharp and WinForms with SDL3 and a
  software renderer

Video and audio
- Replace Acinerella with FFmpeg 8.1.3 (FFmpeg.AutoGen)
- Add hardware accelerated video decoding (D3D11VA, DXVA2, VideoToolbox,
  VAAPI, VDPAU) with software fallback
- Convert YUV video frames to RGB on the GPU in Direct3D 11 and OpenGL
- Add the video options HardwareDecoding, GpuColorConversion,
  DecoderThreads and VideoDownscaleResolution
- Update OpenAL to OpenTK 4 and NAudio recording to WasapiRecorder

Fixes
- Fix the song preview start and shorten the reporter buttons
- Fix a crash when opening the highscore without a selected song
- Use the options slide highlight in the party mode screens to avoid
  brightness flicker on VRR displays
- Disable GameInput in the x86 build, SDL3 crashes in GameInputCreate
  on 32-bit systems with the GameInput runtime installed
- Fix a truncation warning in PitchTracker
2026-11-02 08:11:20 +01:00
Quentin Bray 6ffa63b923 Apply R# clean-up for reliability (#877)
* Apply R# clean-up for reliability

- Migrate to NUnit4 Assert.That
- Update dependencise versions
- Fix LangVersion to 9.0 (until net core migration)
- Reformat code
- Apply 'var' style (easier for refactoring)
- Remove redundant parentheses
- Add braces on every condition blocks (1 line)
- Uses new null checking patterns
- Uses AutoProperties when possible
- Uses string scalar type instead of class
- Clean usings
- Add .orig files in git ignore
- Rename some properties to respect defined conventions and US format definition
	- ID -> Id
	- BPM -> Bpm
	- Finish -> End

* Update R# settings according to the clean-up made
2026-06-22 19:52:06 +02:00
360c6ae2fa Feature/rating pop up (#760)
* WIP

* WIP

* Add text

* Cleanup

* More Cleanup

* Update Changelog

* Fix layout

---------

Co-authored-by: Florian Schulze <flori.schulze@yahoo.de>
Co-authored-by: Florian Ostertag <flokuep@users.noreply.github.com>
2025-03-25 06:26:37 +01:00
Florian Küpper 222cc0ba03 initial work on rating bar 2017-09-07 22:14:53 +02:00
Florian Küpper 57aa36c24e Fixed some playlist element issues
- SongMenu wasn't resizing after playlist closed
- Playlist Buttons couldn't be used with keyboard
2017-08-31 23:07:25 +02:00
Flamefire aa77d2d95c Fix drag&drop of playlist 2014-12-21 12:38:40 +01:00
Flamefire cd59b82b7b Fix some resharper warnings and errors 2014-12-02 21:59:33 +01:00
Flamefire 204c608000 Fix some elements not selectable 2014-11-27 23:26:37 +01:00
Flamefire 2f99cd2560 Make CSingNotes also implement Draw()
Also a bit refactoring
2014-10-22 22:00:25 +02:00
Flamefire 6bf8a5d64c Draw highlighted element 2014-10-22 13:49:41 +02:00
Flamefire 8c3a50c18f More improvements for objectinteractions
Also removes highlight textures and colors
2014-10-22 13:46:34 +02:00
Flamefire 4c7013836b Move non-drawing stuff out of Draw methods 2014-10-19 18:37:16 +02:00
Flamefire ae7a7fd390 Implement a common Interface for all MenuElements
Also remove CSongMenu and replace it with a factory class
2014-10-19 17:17:39 +02:00
Flamefire 63fc406735 More unification of menuelements and fix for screensing theme 2014-10-18 20:46:51 +02:00
Flamefire b07d31f697 Unify object interactions 2014-10-18 18:46:13 +02:00
Flamefire 19f81943d6 Introduce RenderRect for easy access to the full screen rect 2014-09-26 15:05:19 +02:00
Flamefire eba5deba2b Make CSettings contain only constant values to avoid accidental misuse. Everything changeable is in CConfig 2014-03-19 19:54:55 +01:00
Flamefire 370964ee99 Fix file headers and indentations 2013-09-20 18:09:32 +02:00
Flamefire 762d2c80d2 Code cleanup
Added license stuff
2013-08-22 00:56:58 +02:00
Flamefire b8fe334153 Used object initializers 2013-04-23 22:11:32 +02:00
Flamefire ec766aa7b5 Removed code redundancies 2013-04-23 16:55:57 +02:00
Flamefire dcbbc5caf3 Many cleanups according to ReSharper suggestions (Mostly redundant code)
Minor Bug fixes
2013-04-20 02:19:56 +02:00
Flamefire 74396eda2f Auto cleanup 2013-04-18 15:09:21 +02:00
Flamefire 67da90427b Renaming for namesheme 2013-04-15 19:10:38 +02:00
Flamefire 883b35d0f2 Renamed ambiguous prefixes and abbreviations 2013-04-15 12:35:31 +02:00
Flamefire 1f695a7b83 Added StyleCop Cleanups 2013-03-22 23:17:33 +01:00
Flamefire efab579188 Auto cleanup of VocaluxeLib 2013-03-22 21:12:45 +01:00
Flamefire 91e6d4901b Changed namespace of VocaluxeLib 2013-03-22 20:53:22 +01:00
Flamefire baaa26883a Removed unused usings 2013-03-20 00:45:40 +01:00
Flamefire 71d5b2ce76 Removed useless default:break 2013-03-19 23:03:31 +01:00
Flamefire 3ebd34fcc3 Made the code checker a bit happier 2013-02-26 16:25:29 +01:00
Alexander Eckart 521033ed97 some code reorganization 2013-02-22 21:27:34 +01:00
Alexander Eckart b4f77d50b2 changed base handling in VocaluxeLib 2013-02-22 17:57:47 +01:00
Flamefire 506d98bd3c Added CXMLReader for all XML-reading operations
Added GetIntValueRange to force a value to be in a specific range
2013-02-21 17:07:09 +01:00
Alexander Eckart cb093d6b21 more flexible menu navigation 2012-12-24 00:10:50 +01:00
Alexander Eckart 71f24fb38a changed name selection behavior 2012-12-17 18:37:30 +01:00
Alexander Eckart d6c97568c9 moved menu and party mode files to the new lib 2012-12-14 21:47:28 +01:00