bonsairobo / smooth-bevy-cameras

Bevy camera controllers with buttery, exponential smoothing.
MIT License
286 stars 55 forks source link

Examples don't compile with Bevy 0.11 #37

Closed jonaskivi closed 1 year ago

jonaskivi commented 1 year ago

Interesting plugin. But doesn't compile for me. Might be something I'm doing wrong, but I doubt it.

I tried the example on the front page and then the UnrealCamera example.

Unreal gives these errors: error[E0308]: arguments to this function are incorrect .insert(UnrealCameraBundle::new( | ^^^^^^^^^^^^^^^^^^^^^^^ 30 | UnrealCameraController::default(), 31 | Vec3::new(-2.0, 5.0, 5.0), | ------------------------- expected glam::f32::vec3::Vec3, found bevy::prelude::Vec3 32 | Vec3::new(0., 0., 0.), | --------------------- expected glam::f32::vec3::Vec3, found bevy::prelude::Vec3 33 | Vec3::Y, | ------- expected glam::f32::vec3::Vec3, found bevy::prelude::Vec3

So, some conflict there.

error[E0277]: the trait bound UnrealCameraBundle: bevy::prelude::Component is not satisfied ^ the trait bevy::prelude::Component is not implemented for UnrealCameraBundle

.add_plugins(LookTransformPlugin) | ----------- ^^^^^^^^^^^^^^^^^^^ the trait bevy_app::plugin::sealed::Plugins<_> is not implemented for LookTransformPlugin

error[E0277]: the trait bound UnrealCameraPlugin: bevy_app::plugin::sealed::Plugins<_> is not satisfied --> src/main.rs:38:22 | 38 | .add_plugins(UnrealCameraPlugin::default()) | ----------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait bevy_app::plugin::sealed::Plugins<_> is not implemented for UnrealCameraPlugin

bonsairobo commented 1 year ago

I'm not able to reproduce your errors. Can your provide some steps that I can follow?

joverwey commented 1 year ago

I'm seeing the same thing when trying to use smooth-bevy-cameras from another project that also depends on Bevy 0.11.

  Compiling preview v0.1.0 (D:\repos\TheCoalition\AnimationStyleTransfer\rust\preview)
error[E0277]: the trait bound `UnrealCameraController: bevy::prelude::Component` is not satisfied
   --> preview\src\main.rs:173:19
    |
173 |     mut q_camera: Query<(&Camera, &mut UnrealCameraController)>,
    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `bevy::prelude::Component` is not implemented for `UnrealCameraController`
    |
    = help: the following other types implement trait `bevy::prelude::Component`:
              Aabb
              AabbGizmo
              AccessibilityNode
              Anchor
              AudioSink
              BackgroundColor
              BloomSettings
              BorderColor
            and 141 others
    = note: required for `&mut UnrealCameraController` to implement `WorldQuery`
    = note: 1 redundant requirement hidden
    = note: required for `(&bevy::prelude::Camera, &mut UnrealCameraController)` to implement `WorldQuery`
note: required by a bound in `bevy::prelude::Query`
   --> C:\Users\joverwey\.cargo\registry\src\index.crates.io-6f17d22bba15001f\bevy_ecs-0.11.0\src\system\query.rs:325:37
    |
325 | pub struct Query<'world, 'state, Q: WorldQuery, F: ReadOnlyWorldQuery = ()> {
    |                                     ^^^^^^^^^^ required by this bound in `Query`
joverwey commented 1 year ago

It works when I depend on a specific commit hash instead of just 0.8. I think the version number needs to be bumped to 0.9 and a new version pushed to crates.io?

bonsairobo commented 1 year ago

@joverwey Yea I think that's right. I'll do that now.

bonsairobo commented 1 year ago

0.9.0 published