You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
2.7 KiB
48 lines
2.7 KiB
# Explore Collisions
|
|
|
|
## Instructions
|
|
|
|
Apply your collision detection knowledge by creating a custom mini-game that demonstrates different types of object interactions. This assignment will help you understand collision mechanics through creative implementation and experimentation.
|
|
|
|
### Project requirements
|
|
|
|
**Create a small interactive game featuring:**
|
|
- **Multiple moving objects** that can be controlled via keyboard or mouse input
|
|
- **Collision detection system** using rectangle intersection principles from the lesson
|
|
- **Visual feedback** when collisions occur (object destruction, color changes, effects)
|
|
- **Game rules** that make collisions meaningful and engaging
|
|
|
|
### Creative suggestions
|
|
|
|
**Consider implementing one of these scenarios:**
|
|
- **Asteroid field**: Navigate a ship through dangerous space debris
|
|
- **Bumper cars**: Create a physics-based collision arena
|
|
- **Meteor defense**: Protect Earth from incoming space rocks
|
|
- **Collection game**: Gather items while avoiding obstacles
|
|
- **Territory control**: Competing objects trying to claim space
|
|
|
|
### Technical implementation
|
|
|
|
**Your solution should demonstrate:**
|
|
- Proper use of rectangle-based collision detection
|
|
- Event-driven programming for user input
|
|
- Object lifecycle management (creation and destruction)
|
|
- Clean code organization with appropriate class structure
|
|
|
|
### Bonus challenges
|
|
|
|
**Enhance your game with additional features:**
|
|
- **Particle effects** when collisions occur
|
|
- **Sound effects** for different collision types
|
|
- **Scoring system** based on collision outcomes
|
|
- **Multiple collision types** with different behaviors
|
|
- **Progressive difficulty** that increases over time
|
|
|
|
## Rubric
|
|
|
|
| Criteria | Exemplary | Adequate | Needs Improvement |
|
|
|----------|-----------|----------|-------------------|
|
|
| **Collision Detection** | Implements accurate rectangle-based collision detection with multiple object types and sophisticated interaction rules | Basic collision detection works correctly with simple object interactions | Collision detection has issues or doesn't work consistently |
|
|
| **Code Quality** | Clean, well-organized code with proper class structure, meaningful variable names, and appropriate comments | Code works but could be better organized or documented | Code is difficult to understand or poorly structured |
|
|
| **User Interaction** | Responsive controls with smooth gameplay, clear visual feedback, and engaging mechanics | Basic controls work with adequate feedback | Controls are unresponsive or confusing |
|
|
| **Creativity** | Original concept with unique features, visual polish, and innovative collision behaviors | Standard implementation with some creative elements | Basic functionality without creative enhancements | |