All Projects → ForesightMiningSoftwareCorporation → bevy_transform_gizmo

ForesightMiningSoftwareCorporation / bevy_transform_gizmo

Licence: other
A 3d gizmo for transforming entities in Bevy.

Programming Languages

rust
11053 projects

Labels

Projects that are alternatives of or similar to bevy transform gizmo

dango-tribute
👀
Stars: ✭ 20 (-51.22%)
Mutual labels:  bevy
bevy template
Compile-time optimized Bevy project template
Stars: ✭ 27 (-34.15%)
Mutual labels:  bevy
bevy easings
Helpers and Plugins for Bevy
Stars: ✭ 83 (+102.44%)
Mutual labels:  bevy
libracity
LibraCity - City planning on a needle! LibraCity is a puzzle game where you build a city at equilibrium on a needle. To succeed, take advantage of the various weights of the buildings, and place them all while ensuring the city remains stable.
Stars: ✭ 22 (-46.34%)
Mutual labels:  bevy
virtualGizmo3D
Virtual GIZMO - 3D object manipulator / orientator, via mouse, with pan and dolly/zoom features
Stars: ✭ 36 (-12.2%)
Mutual labels:  gizmo
bevy retrograde
Plugin pack for making 2D games with Bevy
Stars: ✭ 212 (+417.07%)
Mutual labels:  bevy
bevy tilemap
Tilemap with chunks for the Bevy game engine.
Stars: ✭ 169 (+312.2%)
Mutual labels:  bevy
bevy kira audio
A Bevy plugin to use Kira for game audio
Stars: ✭ 99 (+141.46%)
Mutual labels:  bevy
not snake game
A snake-inspired game made in Rust using the Bevy game engine.
Stars: ✭ 65 (+58.54%)
Mutual labels:  bevy
bevy
A refreshingly simple data-driven game engine built in Rust
Stars: ✭ 15,920 (+38729.27%)
Mutual labels:  bevy
bevy mod bounding
Unofficial plugin for generating bounding boxes in Bevy
Stars: ✭ 21 (-48.78%)
Mutual labels:  bevy
bevy prototype networking laminar
This is a prototype of a networking crate for bevy. This create provides a low-level networking plugin built on top of laminar
Stars: ✭ 30 (-26.83%)
Mutual labels:  bevy
bevy-robbo
Port of mrk-its/rust-robbo to bevy
Stars: ✭ 33 (-19.51%)
Mutual labels:  bevy
bevy chess
Chess demo in Bevy
Stars: ✭ 59 (+43.9%)
Mutual labels:  bevy
bevy lint
A Linter for bevy code
Stars: ✭ 21 (-48.78%)
Mutual labels:  bevy
gizmo
OGM
Stars: ✭ 20 (-51.22%)
Mutual labels:  gizmo
rgis
Performant, cross-platform (web, desktop) GIS app written in Rust
Stars: ✭ 79 (+92.68%)
Mutual labels:  bevy
taileater
A puzzle game where you eat your own tail to win!
Stars: ✭ 19 (-53.66%)
Mutual labels:  bevy
space
A SCI-FI community game server simulating space(ships). Built from the ground up to support moddable online action multiplayer and roleplay!
Stars: ✭ 25 (-39.02%)
Mutual labels:  bevy
bevy 4x camera
A 4X style camera for bevy.
Stars: ✭ 26 (-36.59%)
Mutual labels:  bevy

Bevy Transform Gizmo

This Bevy plugin adds a transform gizmo to entities in the scene, allowing you to drag and rotate meshes with your mouse.

Demo.mp4

Demo

Run a minimal implementation of the gizmo by cloning this repository and running:

cargo run --example minimal

Features

  • Prebuilt transform gizmo appears when you select a designated mesh
  • Translation handles
  • Rotation handles
  • Gizmo always renders on top of the main render pass
  • Gizmo scales at it moves closer/further from the camera

Usage

This plugin is built on and relies on bevy_mod_picking for 3d mouse interaction with the scene.

Add the plugin to the [dependencies] in Cargo.toml

bevy_transform_gizmo = { git = "https://github.com/ForesightMiningSoftwareCorporation/bevy_transform_gizmo", branch = "main" }

You will need to add the transform gizmo plugin, as well as make sure you have also brought in the picking plugin.

.add_plugins(bevy_mod_picking::DefaultPickingPlugins)
.add_plugin(bevy_transform_gizmo::TransformGizmoPlugin)

Next, you will need to mark your picking camera as your gizmo camera:

.insert_bundle(bevy_mod_picking::PickingCameraBundle::default())
.insert(bevy_transform_gizmo::GizmoPickSource::default());

Finally, mark any meshes you want to be transformed with the gizmo; note they must also be selectable in the picking plugin:

.insert_bundle(bevy_mod_picking::PickableBundle::default())
.insert(bevy_transform_gizmo::GizmoTransformable);

See the minimal demo for an example of a minimal implementation.

License

bevy_transform_gizmo is free and open source! All code in this repository is dual-licensed under either:

at your option. This means you can select the license you prefer! This dual-licensing approach is the de-facto standard in the Rust ecosystem and there are very good reasons to include both.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Sponsors

The creation and maintenance of Bevy Transform Gizmo is sponsored by Foresight Mining Software Corporation.

Foresight Mining Software Corporation

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].