Skip to content

Commit

Permalink
feat: upgrade to bevy 0.13.0 (#31)
Browse files Browse the repository at this point in the history
  • Loading branch information
sparten11740 authored Mar 21, 2024
1 parent 3c0ebe6 commit 7e1caca
Show file tree
Hide file tree
Showing 16 changed files with 66 additions and 199 deletions.
10 changes: 5 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@ authors = ["Jan Wendland"]
include = ["/src", "CHANGELOG.md", "/assets", "LICENSE-APACHE", "LICENSE-MIT"]

[dependencies]
bevy = { version = "0.12.0", default-features = false, features = ["bevy_pbr", "bevy_render"] }
ordered-float = "3.4.0"
bevy = { version = "0.13.1", default-features = false, features = ["bevy_pbr", "bevy_render"] }
ordered-float = "3.9.2"

[dev-dependencies]
bevy = "0.12.0"
bevy-inspector-egui = "0.21.0"
bevy_tweening = "0.9.0"
bevy = "0.13.1"
bevy-inspector-egui = "0.23.4"
bevy_tweening = "0.10.0"
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@

Health Bar plugin for Bevy 3D. Despite its name, this plugin is universally applicable. It can be used to render a bar
for any value that can be represented as percentage. Can be freely sized, supports horizontal or vertical orientation,
custom fore- and background colors, and an optional border with configurable thickness and color. Works with split-screens
custom fore- and background colors, and an optional border with configurable thickness and color. Works with
split-screens
or layered cameras out of the box.

<img src="https://github.com/sparten11740/bevy_health_bar3d/assets/2863630/31c50809-30f0-45fc-8639-054db7c96429" width="300" />
Expand All @@ -13,7 +14,8 @@ or layered cameras out of the box.

| Bevy Version | Crate Version |
|--------------|--------------:|
| `0.12` | >= `2.0.0` |
| `0.13` | >= `3.2.0` |
| `0.12` | `2.0.0` |
| `0.11` | `1.2.0` |
| `0.10` | `1.1.0` |
| `0.9` | `1.0.0` |
Expand Down
14 changes: 7 additions & 7 deletions assets/shaders/bar.wgsl
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@
mesh_functions::get_model_matrix
}

@group(1) @binding(0)
@group(2) @binding(0)
var<uniform> value_and_dimensions: vec4<f32>;
@group(1) @binding(1)
@group(2) @binding(1)
var<uniform> background_color: vec4<f32>;
@group(1) @binding(2)
@group(2) @binding(2)
var<uniform> high_color: vec4<f32>;
@group(1) @binding(3)
@group(2) @binding(3)
var<uniform> moderate_color: vec4<f32>;
@group(1) @binding(4)
@group(2) @binding(4)
var<uniform> low_color: vec4<f32>;
@group(1) @binding(5)
@group(2) @binding(5)
var<uniform> offset: vec4<f32>;
#ifdef HAS_BORDER
@group(1) @binding(6)
@group(2) @binding(6)
var<uniform> border_color: vec4<f32>;
#endif

Expand Down
22 changes: 4 additions & 18 deletions examples/border.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
use bevy::app::App;
use bevy::asset::Assets;
use bevy::pbr::{PbrBundle, PointLight, PointLightBundle, StandardMaterial};
use bevy::prelude::*;
use bevy::utils::default;
use bevy::DefaultPlugins;
use bevy_inspector_egui::quick::WorldInspectorPlugin;

use bevy_health_bar3d::prelude::{BarBorder, BarHeight, BarSettings, HealthBarPlugin, Percentage};
Expand Down Expand Up @@ -40,11 +35,8 @@ fn setup(
) {
// Ground
commands.spawn(PbrBundle {
mesh: meshes.add(Mesh::from(shape::Plane {
size: 5.0,
subdivisions: 0,
})),
material: materials.add(Color::rgb(0.3, 0.5, 0.3).into()),
mesh: meshes.add(Plane3d::default().mesh().size(5.0, 5.0)),
material: materials.add(Color::rgb(0.3, 0.5, 0.3)),
..Default::default()
});

Expand All @@ -59,14 +51,8 @@ fn setup(
values.into_iter().enumerate().for_each(|(i, value)| {
commands.spawn((
PbrBundle {
mesh: meshes.add(
TryInto::<Mesh>::try_into(shape::Icosphere {
radius,
..default()
})
.unwrap(),
),
material: materials.add(Color::rgb(1., 0.2, 0.2).into()),
mesh: meshes.add(Sphere { radius }),
material: materials.add(Color::rgb(1., 0.2, 0.2)),
transform: Transform::from_xyz(2. * radius, 0.4 + i as f32 / 2., 0.0),
..Default::default()
},
Expand Down
22 changes: 4 additions & 18 deletions examples/custom_background.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
use bevy::app::App;
use bevy::asset::Assets;
use bevy::pbr::{PbrBundle, PointLight, PointLightBundle, StandardMaterial};
use bevy::prelude::*;
use bevy::utils::default;
use bevy::DefaultPlugins;
use bevy_inspector_egui::quick::WorldInspectorPlugin;

use bevy_health_bar3d::prelude::{BarSettings, ColorScheme, HealthBarPlugin, Percentage};
Expand Down Expand Up @@ -40,26 +35,17 @@ fn setup(
mut materials: ResMut<Assets<StandardMaterial>>,
) {
commands.spawn(PbrBundle {
mesh: meshes.add(Mesh::from(shape::Plane {
size: 5.0,
subdivisions: 0,
})),
material: materials.add(Color::rgb(0.3, 0.5, 0.3).into()),
mesh: meshes.add(Plane3d::default().mesh().size(5.0, 5.0)),
material: materials.add(Color::rgb(0.3, 0.5, 0.3)),
..Default::default()
});

let radius = 0.2;

commands.spawn((
PbrBundle {
mesh: meshes.add(
TryInto::<Mesh>::try_into(shape::Icosphere {
radius,
..default()
})
.unwrap(),
),
material: materials.add(Color::rgb(1., 0.2, 0.2).into()),
mesh: meshes.add(Sphere { radius }),
material: materials.add(Color::rgb(1., 0.2, 0.2)),
transform: Transform::from_xyz(0.0, 1., 0.0),
..Default::default()
},
Expand Down
26 changes: 4 additions & 22 deletions examples/custom_foreground.rs
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
use bevy::app::App;
use bevy::asset::Assets;
use bevy::pbr::{PbrBundle, PointLight, PointLightBundle, StandardMaterial};
use bevy::prelude::*;
use bevy::utils::default;
use bevy::DefaultPlugins;
use bevy_inspector_egui::quick::WorldInspectorPlugin;

use bevy_health_bar3d::configuration::ForegroundColor;
use bevy_health_bar3d::prelude::*;

#[derive(Component, Reflect)]
Expand Down Expand Up @@ -68,14 +62,8 @@ fn setup(
values.into_iter().enumerate().for_each(|(i, value)| {
commands.spawn((
PbrBundle {
mesh: meshes.add(
TryInto::<Mesh>::try_into(shape::Icosphere {
radius,
..default()
})
.unwrap(),
),
material: materials.add(Color::rgb(1., 0.2, 0.2).into()),
mesh: meshes.add(Sphere { radius }),
material: materials.add(Color::rgb(1., 0.2, 0.2)),
transform: Transform::from_xyz(-2. * radius, 0.4 + i as f32 / 2., 0.0),
..Default::default()
},
Expand All @@ -92,14 +80,8 @@ fn setup(

commands.spawn((
PbrBundle {
mesh: meshes.add(
TryInto::<Mesh>::try_into(shape::Icosphere {
radius,
..default()
})
.unwrap(),
),
material: materials.add(Color::rgb(1., 0.2, 0.2).into()),
mesh: meshes.add(Sphere { radius }),
material: materials.add(Color::rgb(1., 0.2, 0.2)),
transform: Transform::from_xyz(2. * radius, 0.4 + i as f32 / 2., 0.0),
..Default::default()
},
Expand Down
31 changes: 6 additions & 25 deletions examples/default.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
use bevy::app::App;
use bevy::asset::Assets;
use bevy::pbr::*;
use bevy::prelude::*;
use bevy::utils::default;
use bevy::DefaultPlugins;
use bevy_inspector_egui::quick::WorldInspectorPlugin;

use bevy_health_bar3d::prelude::{BarSettings, HealthBarPlugin, Percentage};
Expand Down Expand Up @@ -40,26 +36,17 @@ fn setup(
mut materials: ResMut<Assets<StandardMaterial>>,
) {
commands.spawn(PbrBundle {
mesh: meshes.add(Mesh::from(shape::Plane {
size: 5.0,
subdivisions: 0,
})),
material: materials.add(Color::rgb(0.3, 0.5, 0.3).into()),
mesh: meshes.add(Plane3d::default().mesh().size(5.0, 5.0)),
material: materials.add(Color::rgb(0.3, 0.5, 0.3)),
..Default::default()
});

let radius = 0.2;

commands.spawn((
PbrBundle {
mesh: meshes.add(
TryInto::<Mesh>::try_into(shape::Icosphere {
radius,
..default()
})
.unwrap(),
),
material: materials.add(Color::rgb(1., 0.2, 0.2).into()),
mesh: meshes.add(Sphere { radius }),
material: materials.add(Color::rgb(1., 0.2, 0.2)),
transform: Transform::from_xyz(0.0, 1., 0.0),
..Default::default()
},
Expand All @@ -76,14 +63,8 @@ fn setup(

commands.spawn((
PbrBundle {
mesh: meshes.add(
TryInto::<Mesh>::try_into(shape::Icosphere {
radius,
..default()
})
.unwrap(),
),
material: materials.add(Color::rgb(1., 0.2, 0.2).into()),
mesh: meshes.add(Sphere { radius }),
material: materials.add(Color::rgb(1., 0.2, 0.2)),
transform: Transform::from_xyz(0.0 + 3. * radius, 0.5, 0.0),
..Default::default()
},
Expand Down
13 changes: 3 additions & 10 deletions examples/dinosaurs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,8 @@
use std::f32::consts::PI;
use std::time::Duration;

use bevy::app::App;
use bevy::asset::Assets;
use bevy::pbr::*;
use bevy::prelude::*;
use bevy::utils::default;
use bevy::DefaultPlugins;
use bevy_tweening::lens::{TransformPositionLens, TransformRotationLens};
use bevy_tweening::{Animator, EaseFunction, Tracks, Tween, TweeningPlugin};

Expand Down Expand Up @@ -102,11 +98,8 @@ fn setup(

// Ground
commands.spawn(PbrBundle {
mesh: meshes.add(Mesh::from(shape::Plane {
size: 1000.0,
subdivisions: 0,
})),
material: materials.add(Color::rgb(0.3, 0.5, 0.3).into()),
mesh: meshes.add(Plane3d::default().mesh().size(1000.0, 1000.0)),
material: materials.add(Color::rgb(0.3, 0.5, 0.3)),
..Default::default()
});

Expand Down Expand Up @@ -275,7 +268,7 @@ fn move_camera(
mut commands: Commands,
mut camera_query: Query<(Entity, &Transform), (With<Camera3d>, Without<Moving>)>,
) {
camera_query.for_each_mut(|(entity, transform)| {
camera_query.iter_mut().for_each(|(entity, transform)| {
commands.entity(entity).insert(Moving);

let Vec3 { x, y, z } = transform.translation;
Expand Down
17 changes: 3 additions & 14 deletions examples/dual_bar.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
use bevy::app::App;
use bevy::asset::Assets;
use bevy::pbr::{PbrBundle, PointLight, PointLightBundle, StandardMaterial};
use bevy::prelude::*;
use bevy::utils::default;
use bevy::DefaultPlugins;
use bevy_inspector_egui::quick::WorldInspectorPlugin;

use bevy_health_bar3d::configuration::ForegroundColor;
Expand Down Expand Up @@ -68,14 +63,8 @@ fn setup(
values.into_iter().enumerate().for_each(|(i, value)| {
commands.spawn((
PbrBundle {
mesh: meshes.add(
TryInto::<Mesh>::try_into(shape::Icosphere {
radius,
..default()
})
.unwrap(),
),
material: materials.add(Color::rgb(1., 0.2, 0.2).into()),
mesh: meshes.add(Sphere { radius }),
material: materials.add(Color::rgb(1., 0.2, 0.2)),
transform: Transform::from_xyz(2. * radius, 0.4 + i as f32 / 2., 0.0),
..Default::default()
},
Expand All @@ -84,7 +73,7 @@ fn setup(
current: value,
},
BarSettings::<Health> {
offset: offset,
offset,
width: bar_width,
height: BarHeight::Static(bar_height),
..default()
Expand Down
16 changes: 2 additions & 14 deletions examples/dynamic.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,4 @@
use bevy::app::App;
use bevy::asset::Assets;
use bevy::pbr::{PbrBundle, PointLight, PointLightBundle, StandardMaterial};
use bevy::prelude::*;
use bevy::time::Time;
use bevy::utils::default;
use bevy::DefaultPlugins;
use bevy_inspector_egui::quick::WorldInspectorPlugin;

use bevy_health_bar3d::prelude::{BarSettings, HealthBarPlugin, Percentage};
Expand Down Expand Up @@ -44,14 +38,8 @@ fn setup(

commands.spawn((
PbrBundle {
mesh: meshes.add(
TryInto::<Mesh>::try_into(shape::Icosphere {
radius,
..default()
})
.unwrap(),
),
material: materials.add(Color::rgb(1., 0.2, 0.2).into()),
mesh: meshes.add(Sphere { radius }),
material: materials.add(Color::rgb(1., 0.2, 0.2)),
transform: Transform::from_xyz(0., 1., 0.0),
..Default::default()
},
Expand Down
Loading

0 comments on commit 7e1caca

Please sign in to comment.