47 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 86dc259c17 Merge branch 'develop' into player-guid 2017-11-05 23:32:30 +01:00
Florian Küpper bf8c774c23 Merge branch 'develop' of github.com:Vocaluxe/Vocaluxe into develop 2017-09-11 22:45:00 +02:00
Florian Küpper 53aa5b47b6 Removed outdatet struct var 2017-09-11 12:34:36 +02:00
Florian Küpper 7edff72194 Calculate player rating based on last sung line 2017-09-02 23:15:45 +02:00
Florian Küpper e3497641dd Use GUID instead of int for player-ids; ID is now unique and saved to player.xml-file 2015-12-23 14:23:55 +01:00
Flamefire 3344a3562f Use new serializer for theme loading
Fix some bugs during load
2014-12-17 00:12:20 +01:00
Flamefire b99f9467de Fix inaccessible buttons 2014-11-27 23:03:04 +01:00
Flamefire a318ce12fa Replace remaining usages of CXmlSerializer
(Old theme loading remaining)
2014-10-30 17:54:59 +01:00
Flamefire acaf4eadb2 Serialize Themes 2014-10-27 11:10:29 +01:00
Flamefire b044efe50e Add normalized attribute
Allow empty embedded lists
2014-10-24 23:46:45 +02:00
Flamefire eca0dd68ca Make SReflection a nullable 2014-10-24 22:54:11 +02:00
Flamefire ad3f01aded Refactoring and fixes for some special cases (mostly lists) 2014-10-24 22:48:47 +02:00
Flamefire 31a9ac6afa Change struct of cover file 2014-10-24 13:52:18 +02:00
Flamefire 8ae1ff3e57 Move enum to enums 2014-10-23 17:06:44 +02:00
Flamefire fe07a2f926 Generate Covers for songs 2014-10-23 17:05:57 +02:00
Flamefire 2f99cd2560 Make CSingNotes also implement Draw()
Also a bit refactoring
2014-10-22 22:00:25 +02:00
Flamefire 38a19b6adb Allow incomplete colors 2014-10-16 23:57:23 +02:00
Flamefire 8109d77ab1 Fix wrong theme stuff 2014-10-16 23:47:52 +02:00
Flamefire 87f3271046 Remove copy constructors for structs 2014-10-16 21:38:22 +02:00
Flamefire 86fb73ca48 Cleanup not required XML attributes 2014-10-16 21:27:09 +02:00
Flamefire e119e46c5a Improve partymode loading (return bool instead of incomplete PM) 2014-10-15 15:32:16 +02:00
Flamefire defb2ca6c7 Rewrite Theme Engine 2014-10-08 22:29:02 +02:00
Flamefire 9e5011374f Rename CTheme to CThemes 2014-10-05 17:27:45 +02:00
Flamefire 355d7b4b5f Merge branch 'develop' into Better_Graphics_Handling
Conflicts:
	VocaluxeLib/Menu/CNameSelection.cs
	VocaluxeLib/Menu/CPlaylist.cs
	VocaluxeLib/Menu/CText.cs
	VocaluxeLib/Menu/SongMenu/CSongMenuFramework.cs
	VocaluxeLib/Structs.cs
	VocaluxeLib/VocaluxeLib.csproj
	VocaluxeLib/Xml/CXMLReader.cs
2014-10-05 15:09:52 +02:00
Flamefire 89e528c2a6 Factor out CSkin class
Replace usages of GetColor and remove GetColor(..., skinIndex,...)
2014-10-05 13:36:11 +02:00
Flamefire 6ebbf7df6f Introduce example for a more flexible deserialization
Also make the CoverGenerator themes serializeable
Rest is automatic reformatting.
2014-10-01 00:54:04 +02:00
Flamefire c156fa69ab Merge branch 'develop' of git://github.com/flokuep/Vocaluxe into Better_Graphics_Handling
Conflicts:
	Vocaluxe/COSFunctions.cs
	VocaluxeLib/CHelper.cs
	VocaluxeLib/Menu/CStatic.cs
	VocaluxeLib/Structs.cs
2014-09-25 18:49:18 +02:00
Flamefire bf7eec4233 Use Resize function in CoverLoader
Add possible multithreading
2014-09-25 12:55:00 +02:00
Flamefire 538eab9516 Add Assertions for color values and fix some wrong ones 2014-09-24 16:52:11 +02:00
Florian Küpper 30439659b9 Some fixes. 2014-09-19 11:16:34 +02:00
Florian Küpper 9cca49745a Added constructors to STheme* for copying. 2014-09-10 11:17:36 +02:00
Florian Küpper 96e50f7723 Changed theme-color-handling. 2014-09-09 21:32:07 +02:00
Florian Küpper 6b958527ce First try to implement serialisation (for statics). 2014-08-25 17:22:13 +02:00
Flamefire fe60f6f5df Simplify Songmenu (only selected and preview numbers)
More consistent handling of mouse and keyboard selection of songs
2014-08-07 19:31:17 +02:00
Flamefire e3f744677e Better handling of Points (Preparation for future changes)
Fix some warnings of unused results (show errors on failure!)
2013-09-26 13:47:19 +02:00
Flamefire 9bfedf3cf0 Rename SScores 2013-09-25 20:19:22 +02:00
Flamefire 370964ee99 Fix file headers and indentations 2013-09-20 18:09:32 +02:00
Flamefire 44c78fad19 Split Notes, Lines and Voices into separate files/classes 2013-08-22 00:05:01 +02:00
Flamefire 11398dbb2f Cleanups after merge 2013-05-19 18:38:50 +02:00
Flamefire 9d13c32b93 Merge branch 'Better_Graphics_Handling' into develop
Conflicts:
	Vocaluxe/Base/CBackgroundMusic.cs
	Vocaluxe/Base/CCover.cs
	Vocaluxe/Base/CDataBase.cs
	Vocaluxe/Base/CDraw.cs
	Vocaluxe/Base/CMain.cs
	Vocaluxe/Base/CProfiles.cs
	Vocaluxe/Base/CTheme.cs
	Vocaluxe/Base/CVideo.cs
	Vocaluxe/Base/CWebcam.cs
	Vocaluxe/Base/Fonts/CFont.cs
	Vocaluxe/Base/Fonts/CGlyph.cs
	Vocaluxe/Lib/Draw/CDirect3D.cs
	Vocaluxe/Lib/Draw/CDrawWinForm.cs
	Vocaluxe/Lib/Draw/COpenGL.cs
	Vocaluxe/Lib/Draw/IDraw.cs
	Vocaluxe/Lib/Video/CVideoDecoder.cs
	Vocaluxe/Lib/Video/CVideoDecoderFFmpeg.cs
	Vocaluxe/Lib/Video/CVideoDecoderGstreamer.cs
	Vocaluxe/Lib/Video/IVideoDecoder.cs
	Vocaluxe/Lib/Webcam/CAForgeNet.cs
	Vocaluxe/Lib/Webcam/IWebcam.cs
	Vocaluxe/Screens/CScreenCredits.cs
	Vocaluxe/Screens/CScreenNames.cs
	Vocaluxe/Screens/CScreenOptionsVideo.cs
	Vocaluxe/Screens/CScreenProfiles.cs
	Vocaluxe/Screens/CScreenSing.cs
	VocaluxeLib/Menu/IMenu.cs
	VocaluxeLib/Songs/CCategory.cs
	VocaluxeLib/Songs/CSong.cs
	VocaluxeLib/Structs.cs
	VocaluxeLib/VocaluxeLib.csproj
2013-05-19 17:53:46 +02:00
Alexander Eckart 4161652a1d Merge remote-tracking branch 'remotes/flokuep/Font_Rewrite' into develop
Conflicts:
	Vocaluxe/Base/CBackgroundMusic.cs
	Vocaluxe/Base/CMain.cs
	Vocaluxe/Base/CTheme.cs
	Vocaluxe/Base/Font/CGlyph.cs
	Vocaluxe/Lib/Draw/CDirect3D.cs
	Vocaluxe/Lib/Draw/CDrawWinForm.cs
	Vocaluxe/Lib/Draw/COpenGL.cs
	Vocaluxe/Program.cs
	Vocaluxe/Screens/CScreenCredits.cs
	Vocaluxe/Screens/CScreenMain.cs
	Vocaluxe/Screens/CScreenOptionsTheme.cs
	Vocaluxe/Screens/CScreenSing.cs
	Vocaluxe/Vocaluxe.csproj
	VocaluxeLib/Menu/IMenu.cs
2013-05-10 19:28:20 +02:00
Alexander Eckart ec5bdb7742 SProfile => CProfile; SAvatar => CAvatar 2013-05-06 23:29:31 +02:00
Alexander Eckart ed3047314b finished moving around 2013-05-06 23:18:02 +02:00
Alexander Eckart 685bc019fd moved some files 2013-05-06 23:11:56 +02:00