Skip to content

A Bevy plugin that provides gyroscope functionality.

License

Notifications You must be signed in to change notification settings

gradddev/bevy_gyroscope

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bevy Gyroscope Plugin

Warning

This plugin currently only supports iOS devices.

A Bevy plugin that provides gyroscope functionality.

Installation

You can add this plugin to your project using cargo:

cargo add bevy_gyroscope

Or manually add it to your Cargo.toml:

[dependencies]
bevy_gyroscope = "0.1.0"  # replace with actual version

Usage

use bevy::prelude::*;
use bevy_gyroscope::{GyroscopePlugin, Gyroscope};

fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        // Add the gyroscope plugin with default settings (60Hz update frequency)
        .add_plugins(GyroscopePlugin::default())
        .add_systems(Update, use_gyroscope_data)
        .run();
}

fn use_gyroscope_data(gyroscope: Res<Gyroscope>) {
    println!("Gyroscope: x={}, y={}, z={}", 
        gyroscope.x, 
        gyroscope.y, 
        gyroscope.z
    );
}

Custom Configuration

You can customize the update frequency when adding the plugin:

.add_plugins(GyroscopePlugin { frequency: 120.0 })

Resource Components

The plugin provides a Gyroscope resource that contains the rotation delta (change in rotation) for the current frame:

  • x: Change in rotation around the x-axis (in radians) per frame
  • y: Change in rotation around the y-axis (in radians) per frame
  • z: Change in rotation around the z-axis (in radians) per frame

License

MIT License

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

About

A Bevy plugin that provides gyroscope functionality.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages