Crash Bandicoot PC Port - Version 1.4
🚀 Version 1.4 is a monumental update for the project! This release brings native Linux support, completely replaces the web-based launcher with a 100% native C# UI on Windows, fixes a critical level crash in Generator Room, and overhauls the entire audio and XA streaming pipeline.
🔥 Major Highlights & What's New
🐧 Cross-Platform Linux Support
- Native Linux Build: Added multi-framework targeting (
net10.0CLI for Linux alongsidenet10.0-windows). - CLI & Standalone Window: Linux builds currently launch directly via CLI commands (
--prepare,--run,--smoke) using a standalone Silk.NET / OpenGL render window. - GUI Launcher Coming Soon: Please note: A dedicated graphical launcher for Linux is currently in development and will be available in an upcoming update!
- Wider Driver & VM Compatibility: Lowered the minimum OpenGL requirement to OpenGL 4.3 for better performance on Linux graphics drivers and virtual machines.
- OpenAL Soft Integration: Added Linux audio compatibility via OpenAL Soft.
⚡ 100% Native C# Launcher UI on Windows (Goodbye WebView2)
- Native GDI+ Surface: Completely stripped out
index.html,WebView2, and Photino stubs. The Windows launcher is now an ultra-fast, lightweight, pure C# WinForms native UI. - Custom
ThemeSliderControl: Replaced standard Windows sliders with a custom-paintedThemeSliderfor volume and filter controls. - Enhanced Visual Polish: Improved layout typography with larger Bungee/Nunito font metrics, polished card boundaries, adjusted dialog positioning, and centered glyph icons.
🐛 Fixed Generator Room Level Crash (SCUS-94900)
- Generator Room Fix: Fixed a critical crash on the Generator Room level where geometry operations would clobber
GP/SPregisters inDispatcherandPSMemory, triggering unmapped address exceptions during level load/transitions. - Improved Memory Diagnostics: Enhanced unmapped memory tracking and runtime exception logs.
🔊 Audio Pipeline Overhaul & XA Tuning
- Stutter-Free XA Audio: Rewrote the LibCd XA pump logic with adaptive sleep, larger scan targets, and higher thread priorities for smooth CD-audio playback.
- Mixer Responsiveness: Expanded host audio buffer count/size, reduced XA prime frames, added open-device fallback retries, and increased mixer loop responsiveness.
🔒 Single-Instance Process Enforcement
- Cross-Platform Locking: Implemented an exclusive file lock mechanism to ensure only one instance of the app runs at a time on both Windows and Linux.
🛠️ Summary of Changes
- Platform Support: Dual-target builds (
net10.0-windows&net10.0), Linux CLI options (GUI launcher coming soon),win-x64andlinux-x64automated release builds viapublish_release.py. - Launcher UI: Removed WebView2 / HTML stack; added GDI+ native WinForms launcher for Windows, custom
ThemeSlider, and improved DPI layout metrics. - Core Engine & Memory: Fixed GP/SP geometry register clobbering causing the Generator Room level crash, added memory unmapped diagnostics.
- Audio System: Expanded buffer sizes, XA streaming pump tuning, OpenAL Soft fallback, and thread priority optimizations.
- Process Management: Added cross-platform single-instance locking (
AppLock).
Thank you for testing and playing! If you encounter any bugs on Windows or Linux, please open an issue in the repository.