"Musical Experience"
For this assignment, you will demonstrate your creativity and technical competency with Godot and git by creating an interactive musical experience. Your project must be deployed to a mobile device (phone/tablet) or XR headset (Quest 3 preferred). The project can be one of:
- An interactive musical instrument
- A music-based game
- A real-time music visualizer
Your experience can be 2D, 3D, or XR (Extended Reality). XR implementations are particularly encouraged as we have headsets available for development and testing.
Some project ideas:
- Hand-tracked virtual instruments (guitar, piano, drums)
- Beat Saber-style rhythm game
- Audio-reactive visualization environment
- Motion-controlled sound generator
- Collaborative musical playground
- Spatial audio experience
- Interactive music sequencer
- Virtual DJ system
- Generative music system
- Holographic Step Sequencer
- Audio-driven particle system
- Must be deployed and fully functional on at least one target platform (mobile or XR)
- Must use version control (git) throughout development
- Must include audio generation/manipulation
- Must provide meaningful visual feedback
- Should demonstrate understanding of Godot's audio system
Category | Weighting | 1 | 2.1 | 2.2 | Pass | Fail |
---|---|---|---|---|---|---|
Technical Implementation | 40% | Advanced algorithm design (e.g., procedural audio generation, complex gesture recognition). Sophisticated use of Godot's audio system (buses, effects, dynamic mixing). Multiple custom nodes/systems showing SOLID principles. Complex state management. Effective use of multithreading or concurrent processes. Advanced shader implementation. Demonstrates significant self-directed learning of advanced topics. Clean, well-structured, commented code. Excellent git workflow with meaningful commits | Implementation of moderately complex features (e.g., basic audio synthesis, gesture detection). Good use of Godot's built-in systems. Custom nodes showing good OOP practices. Basic shader usage. Evidence of self-directed learning. Regular, well-documented git commits | Basic feature implementation using primarily built-in Godot functionality. Some custom nodes. Simple audio playback and manipulation. Basic version control usage | Minimal working implementation. Limited interaction. Poor code structure. Sparse git usage | Non-functional implementation. No version control. Code doesn't compile |
User Experience & Creativity | 30% | Highly innovative concept. Exceptional attention to user interaction design. Professional-quality visual and audio feedback. Novel approach to musical interaction. Demonstrates deep understanding of target platform capabilities. High degree of polish and refinement | Good original concept. Clear and intuitive interface. Meaningful visual/audio feedback. Good platform integration. Shows creativity in implementation | Basic but complete concept. Functional interface. Simple feedback systems. Limited platform integration | Minimal interaction design. Basic feedback. Poor platform integration | Incomplete or non-functional experience |
Technical Documentation | 30% | Comprehensive documentation including: System architecture overview, UML diagrams, detailed feature documentation, clear setup instructions, known issues/limitations, performance analysis, deployment guide. Professional video demonstration showing all features. Regular, well-documented git commits throughout development | Good documentation covering main systems and features. Clear setup guide. Good quality video demo. Regular git commits | Basic documentation of core features. Simple video demonstration. Some git history | Minimal documentation. Poor quality or missing video. Few git commits | No documentation or version control |
- Working deployment package for target platform
- Git repository showing regular commits throughout development
- Documentation following provided template
- Video demonstration (5-10 minutes) showing:
- Core features and functionality
- Technical implementation highlights
- Platform-specific features
- Live demonstration of the experience
- Final project demonstration in class
- Code review of git repository
- Evaluation of documentation and video submission
- Assessment of platform-specific implementation
Note: The rubric features are indicative rather than exhaustive - exceptional work may demonstrate excellence in ways not explicitly listed. Focus on showing mastery of core concepts while being creative in your implementation.
Previous student projects for inspiration:
- [YouTube Playlist Link]