The Parallel Animation System (PAS) is an app designed to emulate Project Arrhythmia at ⚡ lightning speed ⚡. It supports most of PA's animation features while being lightweight and extremely fast.
- ⚡ Emulates Project Arrhythmia's animation system
- 💬 Renders text objects
- 🔥 Multi-threaded animations
- 💅 High quality rendering
- 🗿 Based as hell
-
Clone the repository:
git clone https://github.com/Reimnop/ParallelAnimationSystem.git --recursive
-
Navigate to the cloned folder and run the project:
dotnet run --project ParallelAnimationSystem.Desktop
This will run ParallelAnimationSystem and also build the PAS executable file in ParallelAnimationSystem\ParallelAnimationSystem.Desktop\bin
.
Parallel Animation System takes the following command line arguments:
Argument | Default | Description |
---|---|---|
-b, --beatmap | required | Path to the beatmap file (.lsb or .vgd) |
-a, --audio | required | Path to the audio file |
--vsync | True | Enable VSync. |
--workers | 4 | Number of worker threads, set to -1 to use all available threads |
--seed | -1 | Seed for the random number generator, set to -1 to use a random seed |
--speed | 1 | Sets the playback speed |
--backend <OpenGL|OpenGLES> | OpenGL | Sets the rendering backend to use |
--post-processing | true | Enable post-processing effects |
--text-rendering | true | Enable text rendering |
--version | Show version information | |
-?, -h, --help | Show help and usage information |
Example usage:
dotnet run --project ParallelAnimationSystem.Desktop -- -b level.vgd -a audio.ogg
Or, when running the executable directly:
ParallelAnimationSystem.Desktop.exe -b level.vgd -a audio.ogg
When updating your local repository, run git pull --recurse-submodules
to ensure all submodules are updated when pulling changes.
If you encounter build errors after running git pull, run git submodule update
to ensure submodules are updated.
Certain GPUs, such as Intel integrated graphics, are not currently supported by the OpenGL backend.
Ensure PAS is configured to use the non-Intel GPU. (For Windows, this is done by adding the PAS executable in the system Graphics settings and setting it to use "high performance".)
You can try running PAS with the OpenGL ES backend with --backend opengles
to force PAS to use OpenGL ES.
This mode is significantly slower, but should work on most systems.
Contributions are welcome! Please feel free to submit issues, fork the repository, and send pull requests.
This project is licensed under the GPLv3 License - see the LICENSE file for details.
- Project Arrhythmia
- OpenTK
- msdfgen
- BASS
- Fonts provided by Google Fonts, DaFont, Fontsource, and Code2000