Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to Bevy 0.11 #66

Merged
merged 9 commits into from
Jul 10, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,8 @@ use bevy_xpbd_3d::prelude::*;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugins(PhysicsPlugins)
.add_startup_system(setup)
.add_plugins((DefaultPlugins, PhysicsPlugins::default()))
.add_systems(Startup, setup)
.run();
}

Expand Down
13 changes: 6 additions & 7 deletions crates/bevy_xpbd_2d/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ default = [ "2d", "f32", "collider-from-mesh" ]
2d = []
f32 = [ "dep:parry2d" ]
f64 = [ "dep:parry2d-f64" ]
debug-plugin = [ "dep:bevy_prototype_debug_lines", "examples_common_2d/debug-plugin" ]
debug-plugin = [ "bevy/bevy_gizmos" ]
simd = [ "parry2d?/simd-stable", "parry2d-f64?/simd-stable" ]
enhanced-determinism = [ "parry2d?/enhanced-determinism", "parry2d-f64?/enhanced-determinism" ]
collider-from-mesh = [ "bevy/bevy_render" ]
Expand All @@ -28,17 +28,16 @@ required-features = [ "2d" ]

[dependencies]
bevy_xpbd_derive = { path = "../bevy_xpbd_derive", version = "0.1" }
bevy = { version = "0.10.1", default-features = false }
bevy_prototype_debug_lines = { version = "0.10.1", optional = true }
parry2d = { version = "0.13.1", optional = true }
parry2d-f64 = { version = "0.13.1", optional = true }
nalgebra = { version = "0.32.2", features = [ "convert-glam023" ] }
bevy = { version = "0.11", default-features = false }
parry2d = { version = "0.13", optional = true }
parry2d-f64 = { version = "0.13", optional = true }
nalgebra = { version = "0.32", features = [ "convert-glam024" ] }
derive_more = "0.99"

[dev-dependencies]
examples_common_2d = { path = "../examples_common_2d" }
approx = "0.5"
glam = { version = "0.23", features = [ "approx" ] }
glam = { version = "0.24", features = [ "approx" ] }
insta = "1.0"
itertools = "0.10"

Expand Down
7 changes: 3 additions & 4 deletions crates/bevy_xpbd_2d/examples/chain_2d.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,12 @@ use examples_common_2d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(SubstepCount(50))
.insert_resource(Gravity(Vector::NEG_Y * 1000.0))
.add_startup_system(setup)
.add_system(follow_mouse)
.add_systems(Startup, setup)
.add_systems(Update, follow_mouse)
.run();
}

Expand Down
5 changes: 2 additions & 3 deletions crates/bevy_xpbd_2d/examples/collision_layers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,10 @@ use examples_common_2d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(Gravity(Vector::NEG_Y * 1000.0))
.add_startup_system(setup)
.add_systems(Startup, setup)
.run();
}

Expand Down
5 changes: 2 additions & 3 deletions crates/bevy_xpbd_2d/examples/fixed_joint_2d.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@ use examples_common_2d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(SubstepCount(50))
.insert_resource(Gravity(Vector::NEG_Y * 1000.0))
.add_startup_system(setup)
.add_systems(Startup, setup)
.run();
}

Expand Down
7 changes: 3 additions & 4 deletions crates/bevy_xpbd_2d/examples/move_marbles.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,12 @@ use examples_common_2d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(SubstepCount(6))
.insert_resource(Gravity(Vector::NEG_Y * 1000.0))
.add_startup_system(setup)
.add_system(movement)
.add_systems(Startup, setup)
.add_systems(Update, movement)
.run();
}

Expand Down
5 changes: 2 additions & 3 deletions crates/bevy_xpbd_2d/examples/prismatic_joint_2d.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@ use examples_common_2d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(SubstepCount(50))
.insert_resource(Gravity(Vector::NEG_Y * 1000.0))
.add_startup_system(setup)
.add_systems(Startup, setup)
.run();
}

Expand Down
25 changes: 9 additions & 16 deletions crates/bevy_xpbd_2d/examples/ray_caster.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,14 @@

use bevy::{prelude::*, sprite::MaterialMesh2dBundle};
use bevy_xpbd_2d::prelude::*;
use examples_common_2d::{bevy_prototype_debug_lines::*, *};
use examples_common_2d::*;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.add_system(render_rays)
.add_startup_system(setup)
.add_systems(Update, render_rays)
.add_systems(Startup, setup)
.run();
}

Expand Down Expand Up @@ -58,27 +57,21 @@ fn setup(
));
}

fn render_rays(mut rays: Query<(&mut RayCaster, &mut RayHits)>, mut lines: ResMut<DebugLines>) {
fn render_rays(mut rays: Query<(&mut RayCaster, &mut RayHits)>, mut gizmos: Gizmos) {
for (ray, hits) in &mut rays {
// Convert to Vec3 for lines
let origin = ray.global_origin().extend(0.0).as_f32();
let direction = ray.global_direction().extend(0.0).as_f32();
let origin = ray.global_origin().as_f32();
let direction = ray.global_direction().as_f32();

for hit in hits.iter() {
lines.line_colored(
gizmos.line_2d(
origin,
origin + direction * hit.time_of_impact as f32,
0.001,
Color::GREEN,
);
}
if hits.is_empty() {
lines.line_colored(
origin,
origin + direction * 1_000_000.0,
0.001,
Color::ORANGE_RED,
);
gizmos.line_2d(origin, origin + direction * 1_000_000.0, Color::ORANGE_RED);
}
}
}
5 changes: 2 additions & 3 deletions crates/bevy_xpbd_2d/examples/revolute_joint_2d.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@ use examples_common_2d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(SubstepCount(50))
.insert_resource(Gravity(Vector::NEG_Y * 1000.0))
.add_startup_system(setup)
.add_systems(Startup, setup)
.run();
}

Expand Down
13 changes: 6 additions & 7 deletions crates/bevy_xpbd_3d/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ default = [ "3d", "f32", "collider-from-mesh" ]
3d = []
f32 = [ "dep:parry3d" ]
f64 = [ "dep:parry3d-f64" ]
debug-plugin = [ "dep:bevy_prototype_debug_lines", "examples_common_3d/debug-plugin" ]
debug-plugin = [ "bevy/bevy_gizmos" ]
simd = [ "parry3d?/simd-stable", "parry3d-f64?/simd-stable" ]
enhanced-determinism = [ "parry3d?/enhanced-determinism", "parry3d-f64?/enhanced-determinism" ]
collider-from-mesh = [ "bevy/bevy_render" ]
Expand All @@ -28,17 +28,16 @@ required-features = [ "3d" ]

[dependencies]
bevy_xpbd_derive = { path = "../bevy_xpbd_derive", version = "0.1" }
bevy = { version = "0.10.1", default-features = false }
bevy_prototype_debug_lines = { version = "0.10.1", optional = true, features = [ "3d" ] }
parry3d = { version = "0.13.1", optional = true }
parry3d-f64 = { version = "0.13.1", optional = true }
nalgebra = { version = "0.32.2", features = [ "convert-glam023" ] }
bevy = { version = "0.11", default-features = false }
parry3d = { version = "0.13", optional = true }
parry3d-f64 = { version = "0.13", optional = true }
nalgebra = { version = "0.32", features = [ "convert-glam024" ] }
derive_more = "0.99"

[dev-dependencies]
examples_common_3d = { path = "../examples_common_3d" }
approx = "0.5"
glam = { version = "0.23", features = [ "approx" ] }
glam = { version = "0.24", features = [ "approx" ] }
insta = "1.0"
itertools = "0.10"

Expand Down
7 changes: 3 additions & 4 deletions crates/bevy_xpbd_3d/examples/chain_3d.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ use examples_common_3d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(Msaa::Sample4)
.insert_resource(AmbientLight {
Expand All @@ -16,8 +15,8 @@ fn main() {
})
.insert_resource(SubstepCount(80))
.insert_resource(Gravity(Vector::NEG_Y * 9.81 * 2.0))
.add_startup_system(setup)
.add_system(movement)
.add_systems(Startup, setup)
.add_systems(Update, movement)
.run();
}

Expand Down
13 changes: 6 additions & 7 deletions crates/bevy_xpbd_3d/examples/cubes.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,11 @@ use examples_common_3d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(Msaa::Sample4)
.add_startup_system(setup)
.add_system(movement)
.add_systems(Startup, setup)
.add_systems(Update, movement)
.run();
}

Expand Down Expand Up @@ -45,9 +44,9 @@ fn setup(
for y in -2..2 {
for z in -2..2 {
let pos = Vector::new(
x as Scalar * (cube_size + 0.1),
y as Scalar * (cube_size + 0.1),
z as Scalar * (cube_size + 0.1),
x as Scalar * (cube_size + 0.05),
y as Scalar * (cube_size + 0.05),
z as Scalar * (cube_size + 0.05),
);
commands.spawn((
PbrBundle {
Expand Down
6 changes: 3 additions & 3 deletions crates/bevy_xpbd_3d/examples/custom_broad_phase.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@ fn main() {

// Add PhysicsPlugins and replace default broad phase with our custom broad phase
app.add_plugins(
PhysicsPlugins
PhysicsPlugins::default()
.build()
.disable::<BroadPhasePlugin>()
.add(BruteForceBroadPhasePlugin),
);

app.add_startup_system(setup).run();
app.add_systems(Startup, setup).run();
}

// Modified from Bevy's 3d_scene example, a cube falling to the ground with velocity
Expand Down Expand Up @@ -77,7 +77,7 @@ impl Plugin for BruteForceBroadPhasePlugin {
.expect("add PhysicsSchedule first");

// Add the broad phase system into the broad phase set
physics_schedule.add_system(collect_collision_pairs.in_set(PhysicsSet::BroadPhase));
physics_schedule.add_systems(collect_collision_pairs.in_set(PhysicsSet::BroadPhase));
}
}

Expand Down
7 changes: 3 additions & 4 deletions crates/bevy_xpbd_3d/examples/custom_constraint.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,14 @@ fn main() {
let mut app = App::new();

// Add plugins and startup system
app.add_plugins(DefaultPlugins)
.add_plugins(PhysicsPlugins)
.add_startup_system(setup);
app.add_plugins((DefaultPlugins, PhysicsPlugins::default()))
.add_systems(Startup, setup);

// Get physics substep schedule and add our custom distance constraint
let substeps = app
.get_schedule_mut(SubstepSchedule)
.expect("add SubstepSchedule first");
substeps.add_system(
substeps.add_systems(
solve_constraint::<CustomDistanceConstraint, 2>.in_set(SubstepSet::SolveUserConstraints),
);

Expand Down
5 changes: 2 additions & 3 deletions crates/bevy_xpbd_3d/examples/fixed_joint_3d.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@ use examples_common_3d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(Msaa::Sample4)
.insert_resource(SubstepCount(50))
.add_startup_system(setup)
.add_systems(Startup, setup)
.run();
}

Expand Down
5 changes: 2 additions & 3 deletions crates/bevy_xpbd_3d/examples/prismatic_joint_3d.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@ use examples_common_3d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(Msaa::Sample4)
.insert_resource(SubstepCount(50))
.add_startup_system(setup)
.add_systems(Startup, setup)
.run();
}

Expand Down
5 changes: 2 additions & 3 deletions crates/bevy_xpbd_3d/examples/revolute_joint_3d.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@ use examples_common_3d::XpbdExamplePlugin;

fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(XpbdExamplePlugin)
.add_plugins((DefaultPlugins, XpbdExamplePlugin))
.insert_resource(ClearColor(Color::rgb(0.05, 0.05, 0.1)))
.insert_resource(Msaa::Sample4)
.insert_resource(SubstepCount(50))
.add_startup_system(setup)
.add_systems(Startup, setup)
.run();
}

Expand Down
12 changes: 6 additions & 6 deletions crates/examples_common_2d/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,21 @@ name = "examples_common_2d"
version = "0.1.0"
edition = "2021"

[features]
debug-plugin = []

[dependencies]
bevy = { version = "0.10.1", default-features = false, features = [
bevy = { version = "0.11", default-features = false, features = [
"bevy_core_pipeline",
"bevy_text",
"bevy_ui",
"bevy_asset",
"bevy_render",
"bevy_sprite",
"bevy_pbr",
"bevy_gizmos",
"default_font",
"tonemapping_luts",
"ktx2",
"zstd",
"bevy_winit",
"x11", # github actions runners don't have libxkbcommon installed, so can't use wayland
] }
bevy_screen_diagnostics = "0.2"
bevy_prototype_debug_lines = "0.10.1"
bevy_xpbd_2d = { path = "../bevy_xpbd_2d", default-features = false }
Loading