#bevy-plugin #v4l2 #camera #opencv #vision #game-engine

bevy_nokhwa

Nokhwa插件,用于bevy游戏引擎

7个版本 (重大更新)

0.6.0 2024年7月5日
0.5.0 2024年2月20日
0.4.0 2023年11月6日
0.3.0 2023年7月10日
0.1.1 2023年1月30日

#44 in 渲染

每月33次下载

MIT/Apache

39KB
500

crates.io MIT/Apache 2.0 crates.io CI Documentation

bevy_nokhwa


preview

使用nokhwa的bevy插件。

此插件允许您在后台渲染摄像头捕获。

展示

use bevy::prelude::*;
use bevy_nokhwa::BevyNokhwaPlugin;

fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        .add_plugin(BevyNokhwaPlugin)
        .add_startup_system(setup_camera)
        .run();
}


fn setup_camera(
    mut commands: Commands,
    mut meshes: ResMut<Assets<Mesh>>,
    mut materials: ResMut<Assets<StandardMaterial>>,
) {
    commands
        .spawn(Camera3dBundle {
            camera_3d: Camera3d {
                // IMPORTANT! Need to set clear_color to None
                clear_color: ClearColorConfig::None,
                ..default()
            },
            transform: Transform::from_xyz(-2.0, 2.5, 5.0).looking_at(Vec3::ZERO, Vec3::Y),
            ..Default::default()
        })
        // auto find camera and use highest resolution 
        // .insert(BackgroundCamera::auto())
        .insert(BackgroundCamera::new(
            ApiBackend::Auto,
            Some(CameraIndex::Index(0)),
            Some(RequestedFormatType::Closest(CameraFormat::new(
                Resolution::new(640, 480),
                FrameFormat::MJPEG,
                30,
            ))),
        ));
}

支持

Bevy tracking

bevy bevy_nokhwa
0.14 0.6
0.13 0.5
0.12 0.4
0.11 0.3
0.10 0.2
0.9 0.1

许可

该项目采用MIT和Apache 2.0双重许可,因此您可以随心所欲地加入,但请记住许可协议。

贡献

是的,这个项目仍然是WIP,所以非常欢迎PR。

依赖

~39–77MB
~1.5M SLoC