Adam Fox's Final Project: Guitar Hero Interface
For my final project, I used ChucK to build an two different instruments that can be played with a Guitar Hero controller.
Rhythm Guitar Hero
The first instrument uses the Karplus Strong algorithm to simulate a six-string acoustic guitar that strums chords. The chords are preprogrammed, such that each voicing is consistent with that of a real acoustic guitar. Some of the methods implemented for the class RhythmGuitarHero are:
- .capo(int, READ/WRITE) ... tunes the guitar up by half-steps, simulating a capo
- .setStrumSpeed(float, READ/WRITE) ... sets the strum speed (0 is instantaneous, 1 is a slow arpeggio)
- .startPlaying() ... puts the guitar in interactive mode, allowing live performance
How to Play the Rhythm Guitar
Once the .startPlaying method is accessed, the interactive mode is turned on.
- Holding down buttons 1-4 correspond to the different chords in one key; the default key is C.
- The A button alters the chord. (The most common alteration is used)
What to include on your project page
- A description of your project
- Your code
- If it's short, you can make a new page for it like this one
- Or, if there's a lot of it, put it in a .zip file so that people can upload it.
- We suggest: put it in your public_html directory on your network drive, then make a link, e.g. to http://www.princeton.edu/~yourname/yourfile.zip. Let us know if you need any help!
- Instructions on how to run your code
- A sound (or video!) recording of your piece, if possible
- See directions above on putting it on your network drive and linking to it