RizzRiff is an interactive application designed to help guitarists of all levels improve their playing skills. This Unity-based project combines real-time pitch detection, visual fretboard representation, and gamified learning to create an engaging and effective guitar practice experience.
- Real-time pitch detection: Accurately detects the notes you play on your guitar.
- Visual fretboard: Displays notes and frets on a virtual guitar neck for easy reference.
- Multiple practice modes: Includes scales, chords, and custom song modes.
- Gamified learning: Earn points and track your progress as you practice.
- Customizable difficulty: Adjust the game's difficulty to match your skill level.
- Built-in tuner: Ensure your guitar is always in tune with the integrated tuning feature.
- Performance analytics: Track your progress over time with detailed statistics and charts.
Mixed.Reality.Guitar.mp4
- Clone the repository:
git clone https://github.com/saurabhchalke/RizzRiff.git
- Open the project in Unity (version 2022.3 or later).
- Build the project for your desired platform (Windows, macOS, or Linux).
- Launch the RizzRiff application.
- Connect your guitar to your computer using an audio interface or microphone.
- Select a practice mode from the main menu.
- Follow the on-screen instructions to start playing and improving your guitar skills.
The RizzRiff project consists of several key components:
FretboardMovement.cs
: Manages the visual representation of the guitar fretboard.NoteSpawner.cs
: Generates notes for the player to play based on the selected mode.NoteDetector.cs
: Handles real-time pitch detection of played notes.GuitarTuner.cs
: Provides an integrated guitar tuning feature.NoteBehaviour.cs
: Controls the behavior of individual note objects.StringVibration.cs
: Simulates string vibration effects for visual feedback.
We welcome contributions to the RizzRiff project! If you'd like to contribute, please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes and commit them with descriptive commit messages.
- Push your changes to your fork.
- Submit a pull request to the main repository.
Please ensure your code follows the existing style and includes appropriate tests.
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.
For more information, please contact Saurabh Chalke, the maintainer.