Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/itssagnikmukherjee/gyromation
This project brings your favorite superheroes to life with an engaging, interactive, comic-like effect using the gyroscopic sensor on mobile devices.
https://github.com/itssagnikmukherjee/gyromation
android android-application jetpack-compose kotlin
Last synced: 3 months ago
JSON representation
This project brings your favorite superheroes to life with an engaging, interactive, comic-like effect using the gyroscopic sensor on mobile devices.
- Host: GitHub
- URL: https://github.com/itssagnikmukherjee/gyromation
- Owner: itssagnikmukherjee
- Created: 2024-10-16T09:55:39.000Z (4 months ago)
- Default Branch: master
- Last Pushed: 2024-10-20T18:10:54.000Z (3 months ago)
- Last Synced: 2024-10-20T22:13:28.895Z (3 months ago)
- Topics: android, android-application, jetpack-compose, kotlin
- Language: Kotlin
- Homepage:
- Size: 3.01 MB
- Stars: 21
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Comic-like Effect with Gyroscopic Sensor π±π¨
This project demonstrates the creation of a **comic-like effect** using the gyroscopic sensor in mobile devices. It allows users to interact with superheroes displayed on the screen by tilting their device, creating dynamic movement and engaging animations, just like in comics!
## π¬ Demo
https://github.com/user-attachments/assets/d7847396-b9ac-405d-8293-433d815079ec
## π² Permissions
```xml
```
## π¨ Customization```kotlin
override fun onSensorChanged(event: SensorEvent?) {
if (event != null) {
val deltaX = event.values[0] // adjust rotation around x-axis
val deltaY = event.values[1] // adjust rotation around y-axisoffsetX += deltaX * 10 // Adjust sensitivity
offsetY += deltaY * 10 // Adjust sensitivity
}
}
```## β¨ Features
- **Interactive Tilt Animations:** Using the gyroscope sensor, the superhero images rotate and translate based on the tilt of the device.
- **Comic-Style Design:** Bright and colorful visuals combined with smooth motion provide a comic book experience.
- **Gyroscope Sensor Integration:** Real-time motion tracking of the device enhances user interaction and engagement.## βοΈ Technologies Used
- **Kotlin**: Programming language for Android development.
- **Jetpack Compose**: For building the responsive and dynamic UI.
- **SensorManager API**: To access the gyroscope sensor and read device tilt.
- **Android**: Target platform for mobile development.## π How It Works
1. **Gyroscopic Sensor**: The gyroscope sensor detects rotation around the deviceβs axes (x, y, and z). This data is used to animate the superhero images on the screen.
2. **Real-Time Animation**: The gyroscope readings are smoothed and applied to rotate and translate images in response to the userβs movement.
3. **Superhero Pages**: Each page displays a different superhero, and users can navigate between them using interactive buttons.## π Installation
1. Clone the repository:
```bash
git clone https://github.com/itssagnikmukherjee/GyroMation.git
```2. Open the project in Android Studio.
3. Run the app on a device or emulator with gyroscopic capabilities.
## π Future Enhancements
- Add more superheroes and comic-like animations.
- Explore advanced gestures for more interactive effects.
- Support for tablets with larger screens.## π¬ Contributing
Want to help make this project even more amazing? Contributions are welcome! Here's how you can get involved:
1. **Fork the repository** and clone it locally.
2. Create a **new branch** for the feature or bugfix you want to work on :
```bash
git checkout -b feature/your-awesome-feature
```
3. Make your changes, then push them back to your fork.
4. Open a Pull Request describing your changes, and Iβll review it as soon as possible!
---Feel free to check out the Issues tab for open bugs or feature requests. If you find something you can tackle, jump in and help out! π»
**Created by [Sagnik Mukherjee](https://github.com/itssagnikmukherjee)**
If you found this project interesting, give it a β on GitHub!